From c1751bafd3f98dbdf65abd0942e2e39a73807864 Mon Sep 17 00:00:00 2001 From: firestar99 Date: Tue, 17 Mar 2026 11:50:07 +0100 Subject: [PATCH 01/12] dis ctx: add `OperandDisContext` containing `IdResult` and `IdResultType` of assoc instruction --- .../src/codegen/instructions.rs | 30 +- crates/grammar-parser/src/codegen/operands.rs | 8 +- crates/rspirv2-types/src/operand/id.rs | 9 +- .../src/operand/literal_const.rs | 5 +- .../src/operand/literal_float.rs | 5 +- .../src/operand/literal_integer.rs | 9 +- .../src/operand/literal_string.rs | 5 +- crates/rspirv2-types/src/operand/mod.rs | 38 +- crates/rspirv2/src/core/inst.rs | 12860 ++++++++++------ crates/rspirv2/src/core/operands.rs | 120 +- crates/rspirv2/src/debug_printf/inst.rs | 9 +- crates/rspirv2/src/glsl_std_450/inst.rs | 611 +- crates/rspirv2/tests/dis.rs | 5 +- 13 files changed, 9203 insertions(+), 4511 deletions(-) diff --git a/crates/grammar-parser/src/codegen/instructions.rs b/crates/grammar-parser/src/codegen/instructions.rs index 8c790a5a..c5376277 100644 --- a/crates/grammar-parser/src/codegen/instructions.rs +++ b/crates/grammar-parser/src/codegen/instructions.rs @@ -48,9 +48,32 @@ pub fn write_inst(writer: &mut GrammarWriter, grammar: &Grammar<'_>) -> anyhow:: let reader = (!members.is_empty()).then(|| quote!(let mut op_reader = )); // disassembly + let dis_operand_ctx = if !member_operands.is_empty() { + let id_result_opt = if let Some(id_result) = id_result { + let name = &id_result.name; + quote!(self.#name) + } else { + quote!(None) + }; + let id_result_type_opt = if let Some(id_result_type) = id_result_type { + let name = &id_result_type.name; + quote!(Some(self.#name)) + } else { + quote!(None) + }; + quote! { + let ctx = &OperandDisContext { + id_result: #id_result_opt, + id_result_type: #id_result_type_opt, + ctx: _ctx, + }; + } + } else { + quote!() + }; let (dis_id_result_pat, dis_id_result_value) = if let Some(id_result) = id_result { let name = &id_result.name; - ("{} = ", Some(quote!(, self.#name.dis(_ctx)))) + ("{} = ", Some(quote!(, self.#name.dis(ctx)))) } else { ("", None) }; @@ -63,7 +86,7 @@ pub fn write_inst(writer: &mut GrammarWriter, grammar: &Grammar<'_>) -> anyhow:: .iter() .map(|op| { let name = &op.name; - quote!(, self.#name.dis(_ctx)) + quote!(, self.#name.dis(ctx)) }) .collect::>(); let pat = [dis_id_result_pat, inst.opname.as_ref()] @@ -84,7 +107,7 @@ pub fn write_inst(writer: &mut GrammarWriter, grammar: &Grammar<'_>) -> anyhow:: ) .collect::(); let rspirv_spaces_prefix = if id_result_type.is_some() { - quote!(let rspirv_space = _ctx.rspirv_space();) + quote!(let rspirv_space = ctx.rspirv_space();) } else { quote!() }; @@ -122,6 +145,7 @@ pub fn write_inst(writer: &mut GrammarWriter, grammar: &Grammar<'_>) -> anyhow:: } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + #dis_operand_ctx #rspirv_spaces_prefix write!(f, #pat #dis_id_result_value #(#dis_operands_value)*) } diff --git a/crates/grammar-parser/src/codegen/operands.rs b/crates/grammar-parser/src/codegen/operands.rs index fb39247b..ef841143 100644 --- a/crates/grammar-parser/src/codegen/operands.rs +++ b/crates/grammar-parser/src/codegen/operands.rs @@ -147,7 +147,7 @@ fn emit_rust_like_enum( } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &OperandDisContext<'_>) -> std::fmt::Result { match self { #(#dis),* } @@ -219,7 +219,7 @@ fn emit_c_like_enum(operand_kind: &OperandKind<'_>, enumerants: &[Enumerant<'_>] } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { #(#dis),* } @@ -298,7 +298,7 @@ fn emit_bitflags_enum(operand_kind: &OperandKind<'_>, enumerants: &[Enumerant<'_ } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -357,7 +357,7 @@ fn emit_composite(operand_kind: &OperandKind<'_>, bases: &[Cow<'_, str>]) -> Tok } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { write!(f, #dis_pat, #(#dis_values),*) } } diff --git a/crates/rspirv2-types/src/operand/id.rs b/crates/rspirv2-types/src/operand/id.rs index a79c5866..e4c88c9e 100644 --- a/crates/rspirv2-types/src/operand/id.rs +++ b/crates/rspirv2-types/src/operand/id.rs @@ -2,9 +2,8 @@ use crate::Word; use crate::binary::{DecodeError, EncodeError, OperandReader, WordWriter}; -use crate::dis::DisContext; use crate::meta::{Category, OperandKind}; -use crate::operand::{Operand, OperandEncoding}; +use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; use std::fmt::Formatter; @@ -74,7 +73,7 @@ unsafe impl OperandEncoding for IdResult { } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { self.dis_fmt_color(f, ctx, AnsiColor::Blue.on_default(), false) } } @@ -83,7 +82,7 @@ impl IdResult { pub fn dis_fmt_color( &self, f: &mut Formatter<'_>, - ctx: &DisContext, + ctx: &OperandDisContext<'_>, style: anstyle::Style, prepend_space: bool, ) -> std::fmt::Result { @@ -141,7 +140,7 @@ macro_rules! id_ref { } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { self.0.dis_fmt_color(f, ctx, AnsiColor::Yellow.on_default(), true) } } diff --git a/crates/rspirv2-types/src/operand/literal_const.rs b/crates/rspirv2-types/src/operand/literal_const.rs index a0ae4585..271b3b5d 100644 --- a/crates/rspirv2-types/src/operand/literal_const.rs +++ b/crates/rspirv2-types/src/operand/literal_const.rs @@ -1,8 +1,7 @@ use crate::Word; use crate::binary::{DecodeError, EncodeError, OperandReader, WordWriter}; -use crate::dis::DisContext; use crate::meta::{Category, OperandKind}; -use crate::operand::{Operand, OperandEncoding}; +use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; use smallvec::SmallVec; use std::fmt::Formatter; @@ -179,7 +178,7 @@ unsafe impl OperandEncoding for LiteralConst { } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { let color = ctx.color(AnsiColor::Red.on_default()); match self.0.len() { 1 => write!(f, " {color}{}{color:#}", self.as_u32().unwrap()), diff --git a/crates/rspirv2-types/src/operand/literal_float.rs b/crates/rspirv2-types/src/operand/literal_float.rs index b950b97a..3f0d85d4 100644 --- a/crates/rspirv2-types/src/operand/literal_float.rs +++ b/crates/rspirv2-types/src/operand/literal_float.rs @@ -1,8 +1,7 @@ use crate::Word; use crate::binary::{DecodeError, EncodeError, OperandReader, WordWriter}; -use crate::dis::DisContext; use crate::meta::{Category, OperandKind}; -use crate::operand::{Operand, OperandEncoding}; +use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; use std::fmt::Formatter; @@ -69,7 +68,7 @@ unsafe impl OperandEncoding for LiteralFloat { } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { let color = ctx.color(AnsiColor::Red.on_default()); write!(f, " {color}{}{color:#}", self.to_f32()) } diff --git a/crates/rspirv2-types/src/operand/literal_integer.rs b/crates/rspirv2-types/src/operand/literal_integer.rs index 3e79a476..0fa33123 100644 --- a/crates/rspirv2-types/src/operand/literal_integer.rs +++ b/crates/rspirv2-types/src/operand/literal_integer.rs @@ -1,8 +1,7 @@ use crate::Word; use crate::binary::{DecodeError, EncodeError, OperandReader, WordWriter}; -use crate::dis::DisContext; use crate::meta::{Category, OperandKind}; -use crate::operand::{Operand, OperandEncoding}; +use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; use std::fmt::Formatter; @@ -75,7 +74,11 @@ macro_rules! def_literal_integer { } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt( + &self, + f: &mut Formatter<'_>, + ctx: &OperandDisContext<'_>, + ) -> std::fmt::Result { let color = ctx.color(AnsiColor::Red.on_default()); write!(f, " {color}{}{color:#}", self.0.0) } diff --git a/crates/rspirv2-types/src/operand/literal_string.rs b/crates/rspirv2-types/src/operand/literal_string.rs index 3b0ff288..80848dbf 100644 --- a/crates/rspirv2-types/src/operand/literal_string.rs +++ b/crates/rspirv2-types/src/operand/literal_string.rs @@ -1,8 +1,7 @@ use crate::Word; use crate::binary::{DecodeError, EncodeError, OperandReader, WordWriter}; -use crate::dis::DisContext; use crate::meta::{Category, OperandKind}; -use crate::operand::{Operand, OperandEncoding}; +use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; use std::borrow::Cow; use std::fmt::{Debug, Formatter}; @@ -72,7 +71,7 @@ unsafe impl OperandEncoding for LiteralString { } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { let color = ctx.color(AnsiColor::Green.on_default()); let str = ctx.literal_string_escape.escape(&self.0); write!(f, " {color}\"{str}\"{color:#}") diff --git a/crates/rspirv2-types/src/operand/mod.rs b/crates/rspirv2-types/src/operand/mod.rs index addbec57..672a73e6 100644 --- a/crates/rspirv2-types/src/operand/mod.rs +++ b/crates/rspirv2-types/src/operand/mod.rs @@ -14,6 +14,7 @@ pub use literal_integer::*; pub use literal_string::*; use smallvec::SmallVec; use std::fmt::{Debug, Display, Formatter}; +use std::ops::Deref; /// A SPIR-V operand. The associated const [`Self::KIND`] links to it's [`OperandKind`]. /// @@ -122,7 +123,7 @@ pub unsafe trait OperandEncoding: Sized + Debug { } /// Disassemble this operand to the supplied [`Formatter`]. Prefer [`Self::dis`] over calling this. - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result; + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result; /// Disassemble this operand /// @@ -134,12 +135,12 @@ pub unsafe trait OperandEncoding: Sized + Debug { /// assert_eq!(dis, "OpMyInst %42"); /// ``` #[inline] - fn dis<'a>(&'a self, ctx: &'a DisContext) -> OperandDis<'a, Self> { + fn dis<'a>(&'a self, ctx: &'a OperandDisContext<'_>) -> OperandDis<'a, Self> { OperandDis(self, ctx) } } -pub struct OperandDis<'a, T: OperandEncoding>(&'a T, &'a DisContext); +pub struct OperandDis<'a, T: OperandEncoding>(&'a T, &'a OperandDisContext<'a>); impl<'a, T: OperandEncoding> Display for OperandDis<'a, T> { #[inline] @@ -148,6 +149,31 @@ impl<'a, T: OperandEncoding> Display for OperandDis<'a, T> { } } +/// Context object for disassembly generation of operands within an instruction +#[derive(Copy, Clone, Debug)] +pub struct OperandDisContext<'a> { + pub ctx: &'a DisContext, + pub id_result: Option, + pub id_result_type: Option, +} + +impl<'a> OperandDisContext<'a> { + pub fn new(ctx: &'a DisContext) -> Self { + Self { + ctx, + id_result: None, + id_result_type: None, + } + } +} + +impl<'a> Deref for OperandDisContext<'a> { + type Target = DisContext; + fn deref(&self) -> &Self::Target { + self.ctx + } +} + unsafe impl OperandEncoding for Option { const FIXED_LEN: Option = None; @@ -187,7 +213,7 @@ unsafe impl OperandEncoding for Option { } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { match self { None => Ok(()), Some(e) => e.dis_fmt(f, ctx), @@ -249,7 +275,7 @@ unsafe impl OperandEncoding for Vec { } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { for v in self { T::dis_fmt(v, &mut *f, ctx)?; } @@ -300,7 +326,7 @@ unsafe impl OperandEncoding for SmallVec<[T; } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { for v in self { T::dis_fmt(v, &mut *f, ctx)?; } diff --git a/crates/rspirv2/src/core/inst.rs b/crates/rspirv2/src/core/inst.rs index da80176c..65595ca3 100644 --- a/crates/rspirv2/src/core/inst.rs +++ b/crates/rspirv2/src/core/inst.rs @@ -52,12 +52,17 @@ impl InstEncoding for OpUndef { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUndef{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -86,7 +91,12 @@ impl InstEncoding for OpSourceContinued { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpSourceContinued{}", self.continued_source.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpSourceContinued{}", self.continued_source.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -127,13 +137,18 @@ impl InstEncoding for OpSource { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSource{}{}{}{}", - self.source_language.dis(_ctx), - self.version.dis(_ctx), - self.file.dis(_ctx), - self.source.dis(_ctx) + self.source_language.dis(ctx), + self.version.dis(ctx), + self.file.dis(ctx), + self.source.dis(ctx) ) } } @@ -162,7 +177,12 @@ impl InstEncoding for OpSourceExtension { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpSourceExtension{}", self.extension.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpSourceExtension{}", self.extension.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -194,7 +214,12 @@ impl InstEncoding for OpName { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpName{}{}", self.target.dis(_ctx), self.name.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpName{}{}", self.target.dis(ctx), self.name.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -231,12 +256,17 @@ impl InstEncoding for OpMemberName { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpMemberName{}{}{}", - self.ty.dis(_ctx), - self.member.dis(_ctx), - self.name.dis(_ctx) + self.ty.dis(ctx), + self.member.dis(ctx), + self.name.dis(ctx) ) } } @@ -270,11 +300,16 @@ impl InstEncoding for OpString { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpString{}", - self.id_result.dis(_ctx), - self.string.dis(_ctx) + self.id_result.dis(ctx), + self.string.dis(ctx) ) } } @@ -312,12 +347,17 @@ impl InstEncoding for OpLine { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpLine{}{}{}", - self.file.dis(_ctx), - self.line.dis(_ctx), - self.column.dis(_ctx) + self.file.dis(ctx), + self.line.dis(ctx), + self.column.dis(ctx) ) } } @@ -346,7 +386,12 @@ impl InstEncoding for OpExtension { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpExtension{}", self.name.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpExtension{}", self.name.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -378,11 +423,16 @@ impl InstEncoding for OpExtInstImport { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpExtInstImport{}", - self.id_result.dis(_ctx), - self.name.dis(_ctx) + self.id_result.dis(ctx), + self.name.dis(ctx) ) } } @@ -428,15 +478,20 @@ impl InstEncoding for OpExtInst { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpExtInst{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.set.dis(_ctx), - self.instruction.dis(_ctx), - self.id_ref.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.set.dis(ctx), + self.instruction.dis(ctx), + self.id_ref.dis(ctx) ) } } @@ -470,11 +525,16 @@ impl InstEncoding for OpMemoryModel { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpMemoryModel{}{}", - self.addressing_model.dis(_ctx), - self.memory_model.dis(_ctx) + self.addressing_model.dis(ctx), + self.memory_model.dis(ctx) ) } } @@ -516,13 +576,18 @@ impl InstEncoding for OpEntryPoint { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpEntryPoint{}{}{}{}", - self.execution_model.dis(_ctx), - self.entry_point.dis(_ctx), - self.name.dis(_ctx), - self.interface.dis(_ctx) + self.execution_model.dis(ctx), + self.entry_point.dis(ctx), + self.name.dis(ctx), + self.interface.dis(ctx) ) } } @@ -556,11 +621,16 @@ impl InstEncoding for OpExecutionMode { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpExecutionMode{}{}", - self.entry_point.dis(_ctx), - self.mode.dis(_ctx) + self.entry_point.dis(ctx), + self.mode.dis(ctx) ) } } @@ -589,7 +659,12 @@ impl InstEncoding for OpCapability { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpCapability{}", self.capability.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpCapability{}", self.capability.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -617,7 +692,12 @@ impl InstEncoding for OpTypeVoid { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeVoid", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeVoid", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -645,7 +725,12 @@ impl InstEncoding for OpTypeBool { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeBool", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeBool", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -682,12 +767,17 @@ impl InstEncoding for OpTypeInt { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeInt{}{}", - self.id_result.dis(_ctx), - self.width.dis(_ctx), - self.signedness.dis(_ctx) + self.id_result.dis(ctx), + self.width.dis(ctx), + self.signedness.dis(ctx) ) } } @@ -725,12 +815,17 @@ impl InstEncoding for OpTypeFloat { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeFloat{}{}", - self.id_result.dis(_ctx), - self.width.dis(_ctx), - self.floating_point_encoding.dis(_ctx) + self.id_result.dis(ctx), + self.width.dis(ctx), + self.floating_point_encoding.dis(ctx) ) } } @@ -768,12 +863,17 @@ impl InstEncoding for OpTypeVector { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeVector{}{}", - self.id_result.dis(_ctx), - self.component_type.dis(_ctx), - self.component_count.dis(_ctx) + self.id_result.dis(ctx), + self.component_type.dis(ctx), + self.component_count.dis(ctx) ) } } @@ -811,12 +911,17 @@ impl InstEncoding for OpTypeMatrix { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeMatrix{}{}", - self.id_result.dis(_ctx), - self.column_type.dis(_ctx), - self.column_count.dis(_ctx) + self.id_result.dis(ctx), + self.column_type.dis(ctx), + self.column_count.dis(ctx) ) } } @@ -878,18 +983,23 @@ impl InstEncoding for OpTypeImage { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeImage{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.sampled_type.dis(_ctx), - self.dim.dis(_ctx), - self.depth.dis(_ctx), - self.arrayed.dis(_ctx), - self.ms.dis(_ctx), - self.sampled.dis(_ctx), - self.image_format.dis(_ctx), - self.access_qualifier.dis(_ctx) + self.id_result.dis(ctx), + self.sampled_type.dis(ctx), + self.dim.dis(ctx), + self.depth.dis(ctx), + self.arrayed.dis(ctx), + self.ms.dis(ctx), + self.sampled.dis(ctx), + self.image_format.dis(ctx), + self.access_qualifier.dis(ctx) ) } } @@ -918,7 +1028,12 @@ impl InstEncoding for OpTypeSampler { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeSampler", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeSampler", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -951,11 +1066,16 @@ impl InstEncoding for OpTypeSampledImage { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeSampledImage{}", - self.id_result.dis(_ctx), - self.image_type.dis(_ctx) + self.id_result.dis(ctx), + self.image_type.dis(ctx) ) } } @@ -993,12 +1113,17 @@ impl InstEncoding for OpTypeArray { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeArray{}{}", - self.id_result.dis(_ctx), - self.element_type.dis(_ctx), - self.length.dis(_ctx) + self.id_result.dis(ctx), + self.element_type.dis(ctx), + self.length.dis(ctx) ) } } @@ -1032,11 +1157,16 @@ impl InstEncoding for OpTypeRuntimeArray { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeRuntimeArray{}", - self.id_result.dis(_ctx), - self.element_type.dis(_ctx) + self.id_result.dis(ctx), + self.element_type.dis(ctx) ) } } @@ -1070,11 +1200,16 @@ impl InstEncoding for OpTypeStruct { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeStruct{}", - self.id_result.dis(_ctx), - self.id_ref.dis(_ctx) + self.id_result.dis(ctx), + self.id_ref.dis(ctx) ) } } @@ -1108,11 +1243,16 @@ impl InstEncoding for OpTypeOpaque { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeOpaque{}", - self.id_result.dis(_ctx), - self.literal_string.dis(_ctx) + self.id_result.dis(ctx), + self.literal_string.dis(ctx) ) } } @@ -1150,12 +1290,17 @@ impl InstEncoding for OpTypePointer { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypePointer{}{}", - self.id_result.dis(_ctx), - self.storage_class.dis(_ctx), - self.ty.dis(_ctx) + self.id_result.dis(ctx), + self.storage_class.dis(ctx), + self.ty.dis(ctx) ) } } @@ -1193,12 +1338,17 @@ impl InstEncoding for OpTypeFunction { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeFunction{}{}", - self.id_result.dis(_ctx), - self.return_type.dis(_ctx), - self.id_ref.dis(_ctx) + self.id_result.dis(ctx), + self.return_type.dis(ctx), + self.id_ref.dis(ctx) ) } } @@ -1227,7 +1377,12 @@ impl InstEncoding for OpTypeEvent { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeEvent", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeEvent", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1255,7 +1410,12 @@ impl InstEncoding for OpTypeDeviceEvent { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeDeviceEvent", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeDeviceEvent", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1283,7 +1443,12 @@ impl InstEncoding for OpTypeReserveId { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeReserveId", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeReserveId", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1311,7 +1476,12 @@ impl InstEncoding for OpTypeQueue { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeQueue", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeQueue", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1344,11 +1514,16 @@ impl InstEncoding for OpTypePipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypePipe{}", - self.id_result.dis(_ctx), - self.qualifier.dis(_ctx) + self.id_result.dis(ctx), + self.qualifier.dis(ctx) ) } } @@ -1382,11 +1557,16 @@ impl InstEncoding for OpTypeForwardPointer { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpTypeForwardPointer{}{}", - self.pointer_type.dis(_ctx), - self.storage_class.dis(_ctx) + self.pointer_type.dis(ctx), + self.storage_class.dis(ctx) ) } } @@ -1420,12 +1600,17 @@ impl InstEncoding for OpConstantTrue { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantTrue{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -1459,12 +1644,17 @@ impl InstEncoding for OpConstantFalse { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantFalse{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -1502,13 +1692,18 @@ impl InstEncoding for OpConstant { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstant{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx) ) } } @@ -1546,13 +1741,18 @@ impl InstEncoding for OpConstantComposite { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantComposite{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.constituents.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.constituents.dis(ctx) ) } } @@ -1598,15 +1798,20 @@ impl InstEncoding for OpConstantSampler { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantSampler{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampler_addressing_mode.dis(_ctx), - self.param.dis(_ctx), - self.sampler_filter_mode.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampler_addressing_mode.dis(ctx), + self.param.dis(ctx), + self.sampler_filter_mode.dis(ctx) ) } } @@ -1640,12 +1845,17 @@ impl InstEncoding for OpConstantNull { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantNull{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -1679,12 +1889,17 @@ impl InstEncoding for OpSpecConstantTrue { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstantTrue{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -1718,12 +1933,17 @@ impl InstEncoding for OpSpecConstantFalse { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstantFalse{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -1761,13 +1981,18 @@ impl InstEncoding for OpSpecConstant { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstant{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx) ) } } @@ -1805,13 +2030,18 @@ impl InstEncoding for OpSpecConstantComposite { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstantComposite{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.constituents.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.constituents.dis(ctx) ) } } @@ -1849,13 +2079,18 @@ impl InstEncoding for OpSpecConstantOp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstantOp{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.opcode.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.opcode.dis(ctx) ) } } @@ -1897,14 +2132,19 @@ impl InstEncoding for OpFunction { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFunction{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.function_control.dis(_ctx), - self.function_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.function_control.dis(ctx), + self.function_type.dis(ctx) ) } } @@ -1938,12 +2178,17 @@ impl InstEncoding for OpFunctionParameter { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFunctionParameter{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -2008,14 +2253,19 @@ impl InstEncoding for OpFunctionCall { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFunctionCall{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.function.dis(_ctx), - self.id_ref.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.function.dis(ctx), + self.id_ref.dis(ctx) ) } } @@ -2057,14 +2307,19 @@ impl InstEncoding for OpVariable { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpVariable{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.storage_class.dis(_ctx), - self.initializer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.storage_class.dis(ctx), + self.initializer.dis(ctx) ) } } @@ -2110,15 +2365,20 @@ impl InstEncoding for OpImageTexelPointer { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageTexelPointer{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.sample.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.sample.dis(ctx) ) } } @@ -2160,14 +2420,19 @@ impl InstEncoding for OpLoad { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpLoad{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory_access.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory_access.dis(ctx) ) } } @@ -2205,12 +2470,17 @@ impl InstEncoding for OpStore { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpStore{}{}{}", - self.pointer.dis(_ctx), - self.object.dis(_ctx), - self.memory_access.dis(_ctx) + self.pointer.dis(ctx), + self.object.dis(ctx), + self.memory_access.dis(ctx) ) } } @@ -2252,13 +2522,18 @@ impl InstEncoding for OpCopyMemory { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCopyMemory{}{}{}{}", - self.target.dis(_ctx), - self.source.dis(_ctx), - self.memory_access_0.dis(_ctx), - self.memory_access_1.dis(_ctx) + self.target.dis(ctx), + self.source.dis(ctx), + self.memory_access_0.dis(ctx), + self.memory_access_1.dis(ctx) ) } } @@ -2304,14 +2579,19 @@ impl InstEncoding for OpCopyMemorySized { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCopyMemorySized{}{}{}{}{}", - self.target.dis(_ctx), - self.source.dis(_ctx), - self.size.dis(_ctx), - self.memory_access_0.dis(_ctx), - self.memory_access_1.dis(_ctx) + self.target.dis(ctx), + self.source.dis(ctx), + self.size.dis(ctx), + self.memory_access_0.dis(ctx), + self.memory_access_1.dis(ctx) ) } } @@ -2353,14 +2633,19 @@ impl InstEncoding for OpAccessChain { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAccessChain{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -2402,14 +2687,19 @@ impl InstEncoding for OpInBoundsAccessChain { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpInBoundsAccessChain{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -2455,15 +2745,20 @@ impl InstEncoding for OpPtrAccessChain { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpPtrAccessChain{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.element.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.element.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -2505,14 +2800,19 @@ impl InstEncoding for OpArrayLength { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArrayLength{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.structure.dis(_ctx), - self.array_member.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.structure.dis(ctx), + self.array_member.dis(ctx) ) } } @@ -2550,13 +2850,18 @@ impl InstEncoding for OpGenericPtrMemSemantics { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGenericPtrMemSemantics{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx) ) } } @@ -2602,15 +2907,20 @@ impl InstEncoding for OpInBoundsPtrAccessChain { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpInBoundsPtrAccessChain{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.element.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.element.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -2644,11 +2954,16 @@ impl InstEncoding for OpDecorate { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpDecorate{}{}", - self.target.dis(_ctx), - self.decoration.dis(_ctx) + self.target.dis(ctx), + self.decoration.dis(ctx) ) } } @@ -2686,12 +3001,17 @@ impl InstEncoding for OpMemberDecorate { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpMemberDecorate{}{}{}", - self.structure_type.dis(_ctx), - self.member.dis(_ctx), - self.decoration.dis(_ctx) + self.structure_type.dis(ctx), + self.member.dis(ctx), + self.decoration.dis(ctx) ) } } @@ -2720,7 +3040,12 @@ impl InstEncoding for OpDecorationGroup { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpDecorationGroup", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpDecorationGroup", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2753,11 +3078,16 @@ impl InstEncoding for OpGroupDecorate { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpGroupDecorate{}{}", - self.decoration_group.dis(_ctx), - self.targets.dis(_ctx) + self.decoration_group.dis(ctx), + self.targets.dis(ctx) ) } } @@ -2791,11 +3121,16 @@ impl InstEncoding for OpGroupMemberDecorate { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpGroupMemberDecorate{}{}", - self.decoration_group.dis(_ctx), - self.targets.dis(_ctx) + self.decoration_group.dis(ctx), + self.targets.dis(ctx) ) } } @@ -2837,14 +3172,19 @@ impl InstEncoding for OpVectorExtractDynamic { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpVectorExtractDynamic{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector.dis(_ctx), - self.index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector.dis(ctx), + self.index.dis(ctx) ) } } @@ -2890,15 +3230,20 @@ impl InstEncoding for OpVectorInsertDynamic { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpVectorInsertDynamic{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector.dis(_ctx), - self.component.dis(_ctx), - self.index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector.dis(ctx), + self.component.dis(ctx), + self.index.dis(ctx) ) } } @@ -2944,15 +3289,20 @@ impl InstEncoding for OpVectorShuffle { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpVectorShuffle{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx), - self.components.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx), + self.components.dis(ctx) ) } } @@ -2990,13 +3340,18 @@ impl InstEncoding for OpCompositeConstruct { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCompositeConstruct{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.constituents.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.constituents.dis(ctx) ) } } @@ -3038,14 +3393,19 @@ impl InstEncoding for OpCompositeExtract { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCompositeExtract{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.composite.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.composite.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -3091,15 +3451,20 @@ impl InstEncoding for OpCompositeInsert { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCompositeInsert{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.object.dis(_ctx), - self.composite.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.object.dis(ctx), + self.composite.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -3137,13 +3502,18 @@ impl InstEncoding for OpCopyObject { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCopyObject{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -3181,13 +3551,18 @@ impl InstEncoding for OpTranspose { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTranspose{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.matrix.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.matrix.dis(ctx) ) } } @@ -3229,14 +3604,19 @@ impl InstEncoding for OpSampledImage { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSampledImage{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.sampler.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.sampler.dis(ctx) ) } } @@ -3282,15 +3662,20 @@ impl InstEncoding for OpImageSampleImplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3336,15 +3721,20 @@ impl InstEncoding for OpImageSampleExplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3394,16 +3784,21 @@ impl InstEncoding for OpImageSampleDrefImplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3453,16 +3848,21 @@ impl InstEncoding for OpImageSampleDrefExplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3508,15 +3908,20 @@ impl InstEncoding for OpImageSampleProjImplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleProjImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3562,15 +3967,20 @@ impl InstEncoding for OpImageSampleProjExplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleProjExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3620,16 +4030,21 @@ impl InstEncoding for OpImageSampleProjDrefImplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleProjDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3679,16 +4094,21 @@ impl InstEncoding for OpImageSampleProjDrefExplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleProjDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3734,15 +4154,20 @@ impl InstEncoding for OpImageFetch { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageFetch{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3792,16 +4217,21 @@ impl InstEncoding for OpImageGather { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageGather{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.component.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.component.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3851,16 +4281,21 @@ impl InstEncoding for OpImageDrefGather { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageDrefGather{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3906,15 +4341,20 @@ impl InstEncoding for OpImageRead { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageRead{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -3956,13 +4396,18 @@ impl InstEncoding for OpImageWrite { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpImageWrite{}{}{}{}", - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.texel.dis(_ctx), - self.image_operands.dis(_ctx) + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.texel.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -4000,13 +4445,18 @@ impl InstEncoding for OpImage { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImage{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx) ) } } @@ -4044,13 +4494,18 @@ impl InstEncoding for OpImageQueryFormat { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageQueryFormat{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx) ) } } @@ -4088,13 +4543,18 @@ impl InstEncoding for OpImageQueryOrder { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageQueryOrder{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx) ) } } @@ -4136,14 +4596,19 @@ impl InstEncoding for OpImageQuerySizeLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageQuerySizeLod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.level_of_detail.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.level_of_detail.dis(ctx) ) } } @@ -4181,13 +4646,18 @@ impl InstEncoding for OpImageQuerySize { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageQuerySize{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx) ) } } @@ -4229,14 +4699,19 @@ impl InstEncoding for OpImageQueryLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageQueryLod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx) ) } } @@ -4274,13 +4749,18 @@ impl InstEncoding for OpImageQueryLevels { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageQueryLevels{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx) ) } } @@ -4318,13 +4798,18 @@ impl InstEncoding for OpImageQuerySamples { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageQuerySamples{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx) ) } } @@ -4362,13 +4847,18 @@ impl InstEncoding for OpConvertFToU { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertFToU{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.float_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.float_value.dis(ctx) ) } } @@ -4406,13 +4896,18 @@ impl InstEncoding for OpConvertFToS { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertFToS{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.float_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.float_value.dis(ctx) ) } } @@ -4450,13 +4945,18 @@ impl InstEncoding for OpConvertSToF { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertSToF{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.signed_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.signed_value.dis(ctx) ) } } @@ -4494,13 +4994,18 @@ impl InstEncoding for OpConvertUToF { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertUToF{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.unsigned_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.unsigned_value.dis(ctx) ) } } @@ -4538,13 +5043,18 @@ impl InstEncoding for OpUConvert { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUConvert{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.unsigned_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.unsigned_value.dis(ctx) ) } } @@ -4582,13 +5092,18 @@ impl InstEncoding for OpSConvert { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSConvert{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.signed_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.signed_value.dis(ctx) ) } } @@ -4626,13 +5141,18 @@ impl InstEncoding for OpFConvert { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFConvert{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.float_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.float_value.dis(ctx) ) } } @@ -4670,13 +5190,18 @@ impl InstEncoding for OpQuantizeToF16 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpQuantizeToF16{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx) ) } } @@ -4714,13 +5239,18 @@ impl InstEncoding for OpConvertPtrToU { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertPtrToU{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx) ) } } @@ -4758,13 +5288,18 @@ impl InstEncoding for OpSatConvertSToU { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSatConvertSToU{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.signed_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.signed_value.dis(ctx) ) } } @@ -4802,13 +5337,18 @@ impl InstEncoding for OpSatConvertUToS { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSatConvertUToS{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.unsigned_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.unsigned_value.dis(ctx) ) } } @@ -4846,13 +5386,18 @@ impl InstEncoding for OpConvertUToPtr { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertUToPtr{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.integer_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.integer_value.dis(ctx) ) } } @@ -4890,13 +5435,18 @@ impl InstEncoding for OpPtrCastToGeneric { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpPtrCastToGeneric{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx) ) } } @@ -4934,13 +5484,18 @@ impl InstEncoding for OpGenericCastToPtr { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGenericCastToPtr{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx) ) } } @@ -4982,14 +5537,19 @@ impl InstEncoding for OpGenericCastToPtrExplicit { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGenericCastToPtrExplicit{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.storage.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.storage.dis(ctx) ) } } @@ -5027,13 +5587,18 @@ impl InstEncoding for OpBitcast { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitcast{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -5071,13 +5636,18 @@ impl InstEncoding for OpSNegate { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSNegate{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -5115,13 +5685,18 @@ impl InstEncoding for OpFNegate { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFNegate{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -5163,14 +5738,19 @@ impl InstEncoding for OpIAdd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIAdd{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5212,14 +5792,19 @@ impl InstEncoding for OpFAdd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFAdd{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5261,14 +5846,19 @@ impl InstEncoding for OpISub { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpISub{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5310,14 +5900,19 @@ impl InstEncoding for OpFSub { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFSub{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5359,14 +5954,19 @@ impl InstEncoding for OpIMul { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIMul{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5408,14 +6008,19 @@ impl InstEncoding for OpFMul { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFMul{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5457,14 +6062,19 @@ impl InstEncoding for OpUDiv { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUDiv{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5506,14 +6116,19 @@ impl InstEncoding for OpSDiv { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSDiv{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5555,14 +6170,19 @@ impl InstEncoding for OpFDiv { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFDiv{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5604,14 +6224,19 @@ impl InstEncoding for OpUMod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUMod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5653,14 +6278,19 @@ impl InstEncoding for OpSRem { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSRem{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5702,14 +6332,19 @@ impl InstEncoding for OpSMod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSMod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5751,14 +6386,19 @@ impl InstEncoding for OpFRem { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFRem{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5800,14 +6440,19 @@ impl InstEncoding for OpFMod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFMod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -5849,14 +6494,19 @@ impl InstEncoding for OpVectorTimesScalar { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpVectorTimesScalar{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector.dis(_ctx), - self.scalar.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector.dis(ctx), + self.scalar.dis(ctx) ) } } @@ -5898,14 +6548,19 @@ impl InstEncoding for OpMatrixTimesScalar { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpMatrixTimesScalar{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.matrix.dis(_ctx), - self.scalar.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.matrix.dis(ctx), + self.scalar.dis(ctx) ) } } @@ -5947,14 +6602,19 @@ impl InstEncoding for OpVectorTimesMatrix { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpVectorTimesMatrix{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector.dis(_ctx), - self.matrix.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector.dis(ctx), + self.matrix.dis(ctx) ) } } @@ -5996,14 +6656,19 @@ impl InstEncoding for OpMatrixTimesVector { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpMatrixTimesVector{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.matrix.dis(_ctx), - self.vector.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.matrix.dis(ctx), + self.vector.dis(ctx) ) } } @@ -6045,14 +6710,19 @@ impl InstEncoding for OpMatrixTimesMatrix { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpMatrixTimesMatrix{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.left_matrix.dis(_ctx), - self.right_matrix.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.left_matrix.dis(ctx), + self.right_matrix.dis(ctx) ) } } @@ -6094,14 +6764,19 @@ impl InstEncoding for OpOuterProduct { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpOuterProduct{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx) ) } } @@ -6143,14 +6818,19 @@ impl InstEncoding for OpDot { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpDot{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx) ) } } @@ -6192,14 +6872,19 @@ impl InstEncoding for OpIAddCarry { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIAddCarry{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -6241,14 +6926,19 @@ impl InstEncoding for OpISubBorrow { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpISubBorrow{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -6290,14 +6980,19 @@ impl InstEncoding for OpUMulExtended { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUMulExtended{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -6339,14 +7034,19 @@ impl InstEncoding for OpSMulExtended { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSMulExtended{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -6384,13 +7084,18 @@ impl InstEncoding for OpAny { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAny{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector.dis(ctx) ) } } @@ -6428,13 +7133,18 @@ impl InstEncoding for OpAll { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAll{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector.dis(ctx) ) } } @@ -6472,13 +7182,18 @@ impl InstEncoding for OpIsNan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIsNan{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.x.dis(ctx) ) } } @@ -6516,13 +7231,18 @@ impl InstEncoding for OpIsInf { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIsInf{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.x.dis(ctx) ) } } @@ -6560,13 +7280,18 @@ impl InstEncoding for OpIsFinite { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIsFinite{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.x.dis(ctx) ) } } @@ -6604,13 +7329,18 @@ impl InstEncoding for OpIsNormal { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIsNormal{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.x.dis(ctx) ) } } @@ -6648,13 +7378,18 @@ impl InstEncoding for OpSignBitSet { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSignBitSet{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.x.dis(ctx) ) } } @@ -6696,14 +7431,19 @@ impl InstEncoding for OpLessOrGreater { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpLessOrGreater{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.x.dis(_ctx), - self.y.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.x.dis(ctx), + self.y.dis(ctx) ) } } @@ -6745,14 +7485,19 @@ impl InstEncoding for OpOrdered { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpOrdered{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.x.dis(_ctx), - self.y.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.x.dis(ctx), + self.y.dis(ctx) ) } } @@ -6794,14 +7539,19 @@ impl InstEncoding for OpUnordered { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUnordered{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.x.dis(_ctx), - self.y.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.x.dis(ctx), + self.y.dis(ctx) ) } } @@ -6843,14 +7593,19 @@ impl InstEncoding for OpLogicalEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpLogicalEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -6892,14 +7647,19 @@ impl InstEncoding for OpLogicalNotEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpLogicalNotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -6941,14 +7701,19 @@ impl InstEncoding for OpLogicalOr { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpLogicalOr{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -6990,14 +7755,19 @@ impl InstEncoding for OpLogicalAnd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpLogicalAnd{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7035,13 +7805,18 @@ impl InstEncoding for OpLogicalNot { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpLogicalNot{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -7087,15 +7862,20 @@ impl InstEncoding for OpSelect { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSelect{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.condition.dis(_ctx), - self.object_1.dis(_ctx), - self.object_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.condition.dis(ctx), + self.object_1.dis(ctx), + self.object_2.dis(ctx) ) } } @@ -7137,14 +7917,19 @@ impl InstEncoding for OpIEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7186,14 +7971,19 @@ impl InstEncoding for OpINotEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpINotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7235,14 +8025,19 @@ impl InstEncoding for OpUGreaterThan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUGreaterThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7284,14 +8079,19 @@ impl InstEncoding for OpSGreaterThan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSGreaterThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7333,14 +8133,19 @@ impl InstEncoding for OpUGreaterThanEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7382,14 +8187,19 @@ impl InstEncoding for OpSGreaterThanEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7431,14 +8241,19 @@ impl InstEncoding for OpULessThan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpULessThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7480,14 +8295,19 @@ impl InstEncoding for OpSLessThan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSLessThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7529,14 +8349,19 @@ impl InstEncoding for OpULessThanEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpULessThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7578,14 +8403,19 @@ impl InstEncoding for OpSLessThanEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7627,14 +8457,19 @@ impl InstEncoding for OpFOrdEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFOrdEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7676,14 +8511,19 @@ impl InstEncoding for OpFUnordEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFUnordEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7725,14 +8565,19 @@ impl InstEncoding for OpFOrdNotEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFOrdNotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7774,14 +8619,19 @@ impl InstEncoding for OpFUnordNotEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFUnordNotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7823,14 +8673,19 @@ impl InstEncoding for OpFOrdLessThan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFOrdLessThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7872,14 +8727,19 @@ impl InstEncoding for OpFUnordLessThan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFUnordLessThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7921,14 +8781,19 @@ impl InstEncoding for OpFOrdGreaterThan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFOrdGreaterThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -7970,14 +8835,19 @@ impl InstEncoding for OpFUnordGreaterThan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFUnordGreaterThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -8019,14 +8889,19 @@ impl InstEncoding for OpFOrdLessThanEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFOrdLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -8068,14 +8943,19 @@ impl InstEncoding for OpFUnordLessThanEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFUnordLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -8117,14 +8997,19 @@ impl InstEncoding for OpFOrdGreaterThanEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFOrdGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -8166,14 +9051,19 @@ impl InstEncoding for OpFUnordGreaterThanEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFUnordGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -8215,14 +9105,19 @@ impl InstEncoding for OpShiftRightLogical { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpShiftRightLogical{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.shift.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.shift.dis(ctx) ) } } @@ -8264,14 +9159,19 @@ impl InstEncoding for OpShiftRightArithmetic { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpShiftRightArithmetic{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.shift.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.shift.dis(ctx) ) } } @@ -8313,14 +9213,19 @@ impl InstEncoding for OpShiftLeftLogical { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpShiftLeftLogical{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.shift.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.shift.dis(ctx) ) } } @@ -8362,14 +9267,19 @@ impl InstEncoding for OpBitwiseOr { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitwiseOr{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -8411,14 +9321,19 @@ impl InstEncoding for OpBitwiseXor { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitwiseXor{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -8460,14 +9375,19 @@ impl InstEncoding for OpBitwiseAnd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitwiseAnd{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -8505,13 +9425,18 @@ impl InstEncoding for OpNot { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpNot{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -8561,16 +9486,21 @@ impl InstEncoding for OpBitFieldInsert { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitFieldInsert{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.insert.dis(_ctx), - self.offset.dis(_ctx), - self.count.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.insert.dis(ctx), + self.offset.dis(ctx), + self.count.dis(ctx) ) } } @@ -8616,15 +9546,20 @@ impl InstEncoding for OpBitFieldSExtract { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitFieldSExtract{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.offset.dis(_ctx), - self.count.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.offset.dis(ctx), + self.count.dis(ctx) ) } } @@ -8670,15 +9605,20 @@ impl InstEncoding for OpBitFieldUExtract { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitFieldUExtract{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.offset.dis(_ctx), - self.count.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.offset.dis(ctx), + self.count.dis(ctx) ) } } @@ -8716,13 +9656,18 @@ impl InstEncoding for OpBitReverse { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitReverse{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx) ) } } @@ -8760,13 +9705,18 @@ impl InstEncoding for OpBitCount { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitCount{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx) ) } } @@ -8804,13 +9754,18 @@ impl InstEncoding for OpDPdx { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpDPdx{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -8848,13 +9803,18 @@ impl InstEncoding for OpDPdy { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpDPdy{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -8892,13 +9852,18 @@ impl InstEncoding for OpFwidth { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFwidth{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -8936,13 +9901,18 @@ impl InstEncoding for OpDPdxFine { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpDPdxFine{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -8980,13 +9950,18 @@ impl InstEncoding for OpDPdyFine { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpDPdyFine{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -9024,13 +9999,18 @@ impl InstEncoding for OpFwidthFine { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFwidthFine{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -9068,13 +10048,18 @@ impl InstEncoding for OpDPdxCoarse { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpDPdxCoarse{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -9112,13 +10097,18 @@ impl InstEncoding for OpDPdyCoarse { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpDPdyCoarse{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -9156,13 +10146,18 @@ impl InstEncoding for OpFwidthCoarse { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFwidthCoarse{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.p.dis(ctx) ) } } @@ -9237,7 +10232,12 @@ impl InstEncoding for OpEmitStreamVertex { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpEmitStreamVertex{}", self.stream.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpEmitStreamVertex{}", self.stream.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -9265,7 +10265,12 @@ impl InstEncoding for OpEndStreamPrimitive { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpEndStreamPrimitive{}", self.stream.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpEndStreamPrimitive{}", self.stream.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -9302,12 +10307,17 @@ impl InstEncoding for OpControlBarrier { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpControlBarrier{}{}{}", - self.execution.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.execution.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -9341,11 +10351,16 @@ impl InstEncoding for OpMemoryBarrier { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpMemoryBarrier{}{}", - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -9391,15 +10406,20 @@ impl InstEncoding for OpAtomicLoad { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicLoad{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -9441,13 +10461,18 @@ impl InstEncoding for OpAtomicStore { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpAtomicStore{}{}{}{}", - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -9497,16 +10522,21 @@ impl InstEncoding for OpAtomicExchange { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicExchange{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -9564,18 +10594,23 @@ impl InstEncoding for OpAtomicCompareExchange { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicCompareExchange{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.equal.dis(_ctx), - self.unequal.dis(_ctx), - self.value.dis(_ctx), - self.comparator.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.equal.dis(ctx), + self.unequal.dis(ctx), + self.value.dis(ctx), + self.comparator.dis(ctx) ) } } @@ -9633,18 +10668,23 @@ impl InstEncoding for OpAtomicCompareExchangeWeak { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicCompareExchangeWeak{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.equal.dis(_ctx), - self.unequal.dis(_ctx), - self.value.dis(_ctx), - self.comparator.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.equal.dis(ctx), + self.unequal.dis(ctx), + self.value.dis(ctx), + self.comparator.dis(ctx) ) } } @@ -9690,15 +10730,20 @@ impl InstEncoding for OpAtomicIIncrement { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicIIncrement{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -9744,15 +10789,20 @@ impl InstEncoding for OpAtomicIDecrement { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicIDecrement{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -9802,16 +10852,21 @@ impl InstEncoding for OpAtomicIAdd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicIAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -9861,16 +10916,21 @@ impl InstEncoding for OpAtomicISub { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicISub{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -9920,16 +10980,21 @@ impl InstEncoding for OpAtomicSMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicSMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -9979,16 +11044,21 @@ impl InstEncoding for OpAtomicUMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicUMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -10038,16 +11108,21 @@ impl InstEncoding for OpAtomicSMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicSMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -10097,16 +11172,21 @@ impl InstEncoding for OpAtomicUMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicUMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -10156,16 +11236,21 @@ impl InstEncoding for OpAtomicAnd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -10215,16 +11300,21 @@ impl InstEncoding for OpAtomicOr { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicOr{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -10274,16 +11364,21 @@ impl InstEncoding for OpAtomicXor { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicXor{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -10321,13 +11416,18 @@ impl InstEncoding for OpPhi { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpPhi{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pair_id_ref_id_ref.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pair_id_ref_id_ref.dis(ctx) ) } } @@ -10365,12 +11465,17 @@ impl InstEncoding for OpLoopMerge { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpLoopMerge{}{}{}", - self.merge_block.dis(_ctx), - self.continue_target.dis(_ctx), - self.loop_control.dis(_ctx) + self.merge_block.dis(ctx), + self.continue_target.dis(ctx), + self.loop_control.dis(ctx) ) } } @@ -10404,11 +11509,16 @@ impl InstEncoding for OpSelectionMerge { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSelectionMerge{}{}", - self.merge_block.dis(_ctx), - self.selection_control.dis(_ctx) + self.merge_block.dis(ctx), + self.selection_control.dis(ctx) ) } } @@ -10437,7 +11547,12 @@ impl InstEncoding for OpLabel { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpLabel", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpLabel", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -10465,7 +11580,12 @@ impl InstEncoding for OpBranch { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpBranch{}", self.target_label.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpBranch{}", self.target_label.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -10506,13 +11626,18 @@ impl InstEncoding for OpBranchConditional { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpBranchConditional{}{}{}{}", - self.condition.dis(_ctx), - self.true_label.dis(_ctx), - self.false_label.dis(_ctx), - self.branch_weights.dis(_ctx) + self.condition.dis(ctx), + self.true_label.dis(ctx), + self.false_label.dis(ctx), + self.branch_weights.dis(ctx) ) } } @@ -10550,12 +11675,17 @@ impl InstEncoding for OpSwitch { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSwitch{}{}{}", - self.selector.dis(_ctx), - self.default.dis(_ctx), - self.target.dis(_ctx) + self.selector.dis(ctx), + self.default.dis(ctx), + self.target.dis(ctx) ) } } @@ -10630,7 +11760,12 @@ impl InstEncoding for OpReturnValue { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpReturnValue{}", self.value.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpReturnValue{}", self.value.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -10685,11 +11820,16 @@ impl InstEncoding for OpLifetimeStart { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpLifetimeStart{}{}", - self.pointer.dis(_ctx), - self.size.dis(_ctx) + self.pointer.dis(ctx), + self.size.dis(ctx) ) } } @@ -10722,11 +11862,16 @@ impl InstEncoding for OpLifetimeStop { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpLifetimeStop{}{}", - self.pointer.dis(_ctx), - self.size.dis(_ctx) + self.pointer.dis(ctx), + self.size.dis(ctx) ) } } @@ -10784,18 +11929,23 @@ impl InstEncoding for OpGroupAsyncCopy { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupAsyncCopy{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.destination.dis(_ctx), - self.source.dis(_ctx), - self.num_elements.dis(_ctx), - self.stride.dis(_ctx), - self.event.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.destination.dis(ctx), + self.source.dis(ctx), + self.num_elements.dis(ctx), + self.stride.dis(ctx), + self.event.dis(ctx) ) } } @@ -10833,12 +11983,17 @@ impl InstEncoding for OpGroupWaitEvents { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpGroupWaitEvents{}{}{}", - self.execution.dis(_ctx), - self.num_events.dis(_ctx), - self.events_list.dis(_ctx) + self.execution.dis(ctx), + self.num_events.dis(ctx), + self.events_list.dis(ctx) ) } } @@ -10880,14 +12035,19 @@ impl InstEncoding for OpGroupAll { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupAll{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -10929,14 +12089,19 @@ impl InstEncoding for OpGroupAny { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupAny{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -10982,15 +12147,20 @@ impl InstEncoding for OpGroupBroadcast { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.local_id.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.local_id.dis(ctx) ) } } @@ -11036,15 +12206,20 @@ impl InstEncoding for OpGroupIAdd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupIAdd{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -11090,15 +12265,20 @@ impl InstEncoding for OpGroupFAdd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupFAdd{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -11144,15 +12324,20 @@ impl InstEncoding for OpGroupFMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupFMin{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -11198,15 +12383,20 @@ impl InstEncoding for OpGroupUMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupUMin{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -11252,15 +12442,20 @@ impl InstEncoding for OpGroupSMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupSMin{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -11306,15 +12501,20 @@ impl InstEncoding for OpGroupFMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupFMax{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -11360,15 +12560,20 @@ impl InstEncoding for OpGroupUMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupUMax{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -11414,15 +12619,20 @@ impl InstEncoding for OpGroupSMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupSMax{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -11472,16 +12682,21 @@ impl InstEncoding for OpReadPipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpReadPipe{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe.dis(_ctx), - self.pointer.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe.dis(ctx), + self.pointer.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -11531,16 +12746,21 @@ impl InstEncoding for OpWritePipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpWritePipe{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe.dis(_ctx), - self.pointer.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe.dis(ctx), + self.pointer.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -11598,18 +12818,23 @@ impl InstEncoding for OpReservedReadPipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpReservedReadPipe{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe.dis(_ctx), - self.reserve_id.dis(_ctx), - self.index.dis(_ctx), - self.pointer.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe.dis(ctx), + self.reserve_id.dis(ctx), + self.index.dis(ctx), + self.pointer.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -11667,18 +12892,23 @@ impl InstEncoding for OpReservedWritePipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpReservedWritePipe{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe.dis(_ctx), - self.reserve_id.dis(_ctx), - self.index.dis(_ctx), - self.pointer.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe.dis(ctx), + self.reserve_id.dis(ctx), + self.index.dis(ctx), + self.pointer.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -11728,16 +12958,21 @@ impl InstEncoding for OpReserveReadPipePackets { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpReserveReadPipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe.dis(_ctx), - self.num_packets.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe.dis(ctx), + self.num_packets.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -11787,16 +13022,21 @@ impl InstEncoding for OpReserveWritePipePackets { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpReserveWritePipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe.dis(_ctx), - self.num_packets.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe.dis(ctx), + self.num_packets.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -11838,13 +13078,18 @@ impl InstEncoding for OpCommitReadPipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCommitReadPipe{}{}{}{}", - self.pipe.dis(_ctx), - self.reserve_id.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.pipe.dis(ctx), + self.reserve_id.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -11886,13 +13131,18 @@ impl InstEncoding for OpCommitWritePipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCommitWritePipe{}{}{}{}", - self.pipe.dis(_ctx), - self.reserve_id.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.pipe.dis(ctx), + self.reserve_id.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -11930,13 +13180,18 @@ impl InstEncoding for OpIsValidReserveId { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIsValidReserveId{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.reserve_id.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.reserve_id.dis(ctx) ) } } @@ -11982,15 +13237,20 @@ impl InstEncoding for OpGetNumPipePackets { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetNumPipePackets{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -12036,15 +13296,20 @@ impl InstEncoding for OpGetMaxPipePackets { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetMaxPipePackets{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -12098,17 +13363,22 @@ impl InstEncoding for OpGroupReserveReadPipePackets { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupReserveReadPipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.pipe.dis(_ctx), - self.num_packets.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.pipe.dis(ctx), + self.num_packets.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -12162,17 +13432,22 @@ impl InstEncoding for OpGroupReserveWritePipePackets { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupReserveWritePipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.pipe.dis(_ctx), - self.num_packets.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.pipe.dis(ctx), + self.num_packets.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -12218,14 +13493,19 @@ impl InstEncoding for OpGroupCommitReadPipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpGroupCommitReadPipe{}{}{}{}{}", - self.execution.dis(_ctx), - self.pipe.dis(_ctx), - self.reserve_id.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.execution.dis(ctx), + self.pipe.dis(ctx), + self.reserve_id.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -12271,14 +13551,19 @@ impl InstEncoding for OpGroupCommitWritePipe { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpGroupCommitWritePipe{}{}{}{}{}", - self.execution.dis(_ctx), - self.pipe.dis(_ctx), - self.reserve_id.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.execution.dis(ctx), + self.pipe.dis(ctx), + self.reserve_id.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -12328,16 +13613,21 @@ impl InstEncoding for OpEnqueueMarker { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpEnqueueMarker{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.queue.dis(_ctx), - self.num_events.dis(_ctx), - self.wait_events.dis(_ctx), - self.ret_event.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.queue.dis(ctx), + self.num_events.dis(ctx), + self.wait_events.dis(ctx), + self.ret_event.dis(ctx) ) } } @@ -12415,23 +13705,28 @@ impl InstEncoding for OpEnqueueKernel { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpEnqueueKernel{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.queue.dis(_ctx), - self.flags.dis(_ctx), - self.nd_range.dis(_ctx), - self.num_events.dis(_ctx), - self.wait_events.dis(_ctx), - self.ret_event.dis(_ctx), - self.invoke.dis(_ctx), - self.param.dis(_ctx), - self.param_size.dis(_ctx), - self.param_align.dis(_ctx), - self.local_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.queue.dis(ctx), + self.flags.dis(ctx), + self.nd_range.dis(ctx), + self.num_events.dis(ctx), + self.wait_events.dis(ctx), + self.ret_event.dis(ctx), + self.invoke.dis(ctx), + self.param.dis(ctx), + self.param_size.dis(ctx), + self.param_align.dis(ctx), + self.local_size.dis(ctx) ) } } @@ -12485,17 +13780,22 @@ impl InstEncoding for OpGetKernelNDrangeSubGroupCount { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetKernelNDrangeSubGroupCount{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.nd_range.dis(_ctx), - self.invoke.dis(_ctx), - self.param.dis(_ctx), - self.param_size.dis(_ctx), - self.param_align.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.nd_range.dis(ctx), + self.invoke.dis(ctx), + self.param.dis(ctx), + self.param_size.dis(ctx), + self.param_align.dis(ctx) ) } } @@ -12549,17 +13849,22 @@ impl InstEncoding for OpGetKernelNDrangeMaxSubGroupSize { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetKernelNDrangeMaxSubGroupSize{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.nd_range.dis(_ctx), - self.invoke.dis(_ctx), - self.param.dis(_ctx), - self.param_size.dis(_ctx), - self.param_align.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.nd_range.dis(ctx), + self.invoke.dis(ctx), + self.param.dis(ctx), + self.param_size.dis(ctx), + self.param_align.dis(ctx) ) } } @@ -12609,16 +13914,21 @@ impl InstEncoding for OpGetKernelWorkGroupSize { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetKernelWorkGroupSize{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.invoke.dis(_ctx), - self.param.dis(_ctx), - self.param_size.dis(_ctx), - self.param_align.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.invoke.dis(ctx), + self.param.dis(ctx), + self.param_size.dis(ctx), + self.param_align.dis(ctx) ) } } @@ -12668,16 +13978,21 @@ impl InstEncoding for OpGetKernelPreferredWorkGroupSizeMultiple { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetKernelPreferredWorkGroupSizeMultiple{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.invoke.dis(_ctx), - self.param.dis(_ctx), - self.param_size.dis(_ctx), - self.param_align.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.invoke.dis(ctx), + self.param.dis(ctx), + self.param_size.dis(ctx), + self.param_align.dis(ctx) ) } } @@ -12706,7 +14021,12 @@ impl InstEncoding for OpRetainEvent { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpRetainEvent{}", self.event.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpRetainEvent{}", self.event.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -12734,7 +14054,12 @@ impl InstEncoding for OpReleaseEvent { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpReleaseEvent{}", self.event.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpReleaseEvent{}", self.event.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -12767,12 +14092,17 @@ impl InstEncoding for OpCreateUserEvent { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCreateUserEvent{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -12810,13 +14140,18 @@ impl InstEncoding for OpIsValidEvent { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIsValidEvent{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.event.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.event.dis(ctx) ) } } @@ -12849,11 +14184,16 @@ impl InstEncoding for OpSetUserEventStatus { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSetUserEventStatus{}{}", - self.event.dis(_ctx), - self.status.dis(_ctx) + self.event.dis(ctx), + self.status.dis(ctx) ) } } @@ -12891,12 +14231,17 @@ impl InstEncoding for OpCaptureEventProfilingInfo { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCaptureEventProfilingInfo{}{}{}", - self.event.dis(_ctx), - self.profiling_info.dis(_ctx), - self.value.dis(_ctx) + self.event.dis(ctx), + self.profiling_info.dis(ctx), + self.value.dis(ctx) ) } } @@ -12930,12 +14275,17 @@ impl InstEncoding for OpGetDefaultQueue { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetDefaultQueue{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -12981,15 +14331,20 @@ impl InstEncoding for OpBuildNDRange { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBuildNDRange{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.global_work_size.dis(_ctx), - self.local_work_size.dis(_ctx), - self.global_work_offset.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.global_work_size.dis(ctx), + self.local_work_size.dis(ctx), + self.global_work_offset.dis(ctx) ) } } @@ -13035,15 +14390,20 @@ impl InstEncoding for OpImageSparseSampleImplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseSampleImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13089,15 +14449,20 @@ impl InstEncoding for OpImageSparseSampleExplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseSampleExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13147,16 +14512,21 @@ impl InstEncoding for OpImageSparseSampleDrefImplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseSampleDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13206,16 +14576,21 @@ impl InstEncoding for OpImageSparseSampleDrefExplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseSampleDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13261,15 +14636,20 @@ impl InstEncoding for OpImageSparseSampleProjImplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseSampleProjImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13315,15 +14695,20 @@ impl InstEncoding for OpImageSparseSampleProjExplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseSampleProjExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13373,16 +14758,21 @@ impl InstEncoding for OpImageSparseSampleProjDrefImplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseSampleProjDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13432,16 +14822,21 @@ impl InstEncoding for OpImageSparseSampleProjDrefExplicitLod { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseSampleProjDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13487,15 +14882,20 @@ impl InstEncoding for OpImageSparseFetch { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseFetch{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13545,16 +14945,21 @@ impl InstEncoding for OpImageSparseGather { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseGather{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.component.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.component.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13604,16 +15009,21 @@ impl InstEncoding for OpImageSparseDrefGather { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseDrefGather{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.id_ref.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.id_ref.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13651,13 +15061,18 @@ impl InstEncoding for OpImageSparseTexelsResident { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseTexelsResident{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.resident_code.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.resident_code.dis(ctx) ) } } @@ -13726,15 +15141,20 @@ impl InstEncoding for OpAtomicFlagTestAndSet { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicFlagTestAndSet{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -13772,12 +15192,17 @@ impl InstEncoding for OpAtomicFlagClear { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpAtomicFlagClear{}{}{}", - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -13823,15 +15248,20 @@ impl InstEncoding for OpImageSparseRead { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSparseRead{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -13869,13 +15299,18 @@ impl InstEncoding for OpSizeOf { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSizeOf{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx) ) } } @@ -13904,7 +15339,12 @@ impl InstEncoding for OpTypePipeStorage { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypePipeStorage", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypePipeStorage", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -13949,15 +15389,20 @@ impl InstEncoding for OpConstantPipeStorage { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantPipeStorage{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx), - self.capacity.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx), + self.capacity.dis(ctx) ) } } @@ -13995,13 +15440,18 @@ impl InstEncoding for OpCreatePipeFromPipeStorage { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCreatePipeFromPipeStorage{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pipe_storage.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pipe_storage.dis(ctx) ) } } @@ -14055,17 +15505,22 @@ impl InstEncoding for OpGetKernelLocalSizeForSubgroupCount { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetKernelLocalSizeForSubgroupCount{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.subgroup_count.dis(_ctx), - self.invoke.dis(_ctx), - self.param.dis(_ctx), - self.param_size.dis(_ctx), - self.param_align.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.subgroup_count.dis(ctx), + self.invoke.dis(ctx), + self.param.dis(ctx), + self.param_size.dis(ctx), + self.param_align.dis(ctx) ) } } @@ -14115,16 +15570,21 @@ impl InstEncoding for OpGetKernelMaxNumSubgroups { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGetKernelMaxNumSubgroups{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.invoke.dis(_ctx), - self.param.dis(_ctx), - self.param_size.dis(_ctx), - self.param_align.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.invoke.dis(ctx), + self.param.dis(ctx), + self.param_size.dis(ctx), + self.param_align.dis(ctx) ) } } @@ -14153,7 +15613,12 @@ impl InstEncoding for OpTypeNamedBarrier { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeNamedBarrier", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeNamedBarrier", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -14190,13 +15655,18 @@ impl InstEncoding for OpNamedBarrierInitialize { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpNamedBarrierInitialize{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.subgroup_count.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.subgroup_count.dis(ctx) ) } } @@ -14234,12 +15704,17 @@ impl InstEncoding for OpMemoryNamedBarrier { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpMemoryNamedBarrier{}{}{}", - self.named_barrier.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.named_barrier.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -14268,7 +15743,12 @@ impl InstEncoding for OpModuleProcessed { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpModuleProcessed{}", self.process.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpModuleProcessed{}", self.process.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -14301,11 +15781,16 @@ impl InstEncoding for OpExecutionModeId { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpExecutionModeId{}{}", - self.entry_point.dis(_ctx), - self.mode.dis(_ctx) + self.entry_point.dis(ctx), + self.mode.dis(ctx) ) } } @@ -14339,11 +15824,16 @@ impl InstEncoding for OpDecorateId { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpDecorateId{}{}", - self.target.dis(_ctx), - self.decoration.dis(_ctx) + self.target.dis(ctx), + self.decoration.dis(ctx) ) } } @@ -14381,13 +15871,18 @@ impl InstEncoding for OpGroupNonUniformElect { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformElect{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx) ) } } @@ -14429,14 +15924,19 @@ impl InstEncoding for OpGroupNonUniformAll { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformAll{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -14478,14 +15978,19 @@ impl InstEncoding for OpGroupNonUniformAny { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformAny{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -14527,14 +16032,19 @@ impl InstEncoding for OpGroupNonUniformAllEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformAllEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx) ) } } @@ -14580,15 +16090,20 @@ impl InstEncoding for OpGroupNonUniformBroadcast { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.invocation_id.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.invocation_id.dis(ctx) ) } } @@ -14630,14 +16145,19 @@ impl InstEncoding for OpGroupNonUniformBroadcastFirst { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBroadcastFirst{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx) ) } } @@ -14679,14 +16199,19 @@ impl InstEncoding for OpGroupNonUniformBallot { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBallot{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -14728,14 +16253,19 @@ impl InstEncoding for OpGroupNonUniformInverseBallot { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformInverseBallot{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx) ) } } @@ -14781,15 +16311,20 @@ impl InstEncoding for OpGroupNonUniformBallotBitExtract { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBallotBitExtract{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.index.dis(ctx) ) } } @@ -14835,15 +16370,20 @@ impl InstEncoding for OpGroupNonUniformBallotBitCount { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBallotBitCount{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx) ) } } @@ -14885,14 +16425,19 @@ impl InstEncoding for OpGroupNonUniformBallotFindLSB { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBallotFindLSB{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx) ) } } @@ -14934,14 +16479,19 @@ impl InstEncoding for OpGroupNonUniformBallotFindMSB { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBallotFindMSB{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx) ) } } @@ -14987,15 +16537,20 @@ impl InstEncoding for OpGroupNonUniformShuffle { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformShuffle{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.invocation_id.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.invocation_id.dis(ctx) ) } } @@ -15041,15 +16596,20 @@ impl InstEncoding for OpGroupNonUniformShuffleXor { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformShuffleXor{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.mask.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.mask.dis(ctx) ) } } @@ -15095,15 +16655,20 @@ impl InstEncoding for OpGroupNonUniformShuffleUp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformShuffleUp{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.delta.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.delta.dis(ctx) ) } } @@ -15149,15 +16714,20 @@ impl InstEncoding for OpGroupNonUniformShuffleDown { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformShuffleDown{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.delta.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.delta.dis(ctx) ) } } @@ -15207,16 +16777,21 @@ impl InstEncoding for OpGroupNonUniformIAdd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformIAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15266,16 +16841,21 @@ impl InstEncoding for OpGroupNonUniformFAdd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformFAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15325,16 +16905,21 @@ impl InstEncoding for OpGroupNonUniformIMul { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformIMul{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15384,16 +16969,21 @@ impl InstEncoding for OpGroupNonUniformFMul { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformFMul{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15443,16 +17033,21 @@ impl InstEncoding for OpGroupNonUniformSMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformSMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15502,16 +17097,21 @@ impl InstEncoding for OpGroupNonUniformUMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformUMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15561,16 +17161,21 @@ impl InstEncoding for OpGroupNonUniformFMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformFMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15620,16 +17225,21 @@ impl InstEncoding for OpGroupNonUniformSMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformSMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15679,16 +17289,21 @@ impl InstEncoding for OpGroupNonUniformUMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformUMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15738,16 +17353,21 @@ impl InstEncoding for OpGroupNonUniformFMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformFMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15797,16 +17417,21 @@ impl InstEncoding for OpGroupNonUniformBitwiseAnd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBitwiseAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15856,16 +17481,21 @@ impl InstEncoding for OpGroupNonUniformBitwiseOr { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBitwiseOr{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15915,16 +17545,21 @@ impl InstEncoding for OpGroupNonUniformBitwiseXor { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformBitwiseXor{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -15974,16 +17609,21 @@ impl InstEncoding for OpGroupNonUniformLogicalAnd { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformLogicalAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -16033,16 +17673,21 @@ impl InstEncoding for OpGroupNonUniformLogicalOr { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformLogicalOr{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -16092,16 +17737,21 @@ impl InstEncoding for OpGroupNonUniformLogicalXor { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformLogicalXor{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.value.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.value.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -16147,15 +17797,20 @@ impl InstEncoding for OpGroupNonUniformQuadBroadcast { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformQuadBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.index.dis(ctx) ) } } @@ -16201,15 +17856,20 @@ impl InstEncoding for OpGroupNonUniformQuadSwap { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformQuadSwap{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.direction.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.direction.dis(ctx) ) } } @@ -16247,13 +17907,18 @@ impl InstEncoding for OpCopyLogical { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCopyLogical{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -16295,14 +17960,19 @@ impl InstEncoding for OpPtrEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpPtrEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -16344,14 +18014,19 @@ impl InstEncoding for OpPtrNotEqual { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpPtrNotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -16393,14 +18068,19 @@ impl InstEncoding for OpPtrDiff { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpPtrDiff{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -16442,14 +18122,19 @@ impl InstEncoding for OpColorAttachmentReadEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpColorAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.attachment.dis(_ctx), - self.sample.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.attachment.dis(ctx), + self.sample.dis(ctx) ) } } @@ -16487,13 +18172,18 @@ impl InstEncoding for OpDepthAttachmentReadEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpDepthAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sample.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sample.dis(ctx) ) } } @@ -16531,13 +18221,18 @@ impl InstEncoding for OpStencilAttachmentReadEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpStencilAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sample.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sample.dis(ctx) ) } } @@ -16579,13 +18274,18 @@ impl InstEncoding for OpTypeTensorARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeTensorARM{}{}{}", - self.id_result.dis(_ctx), - self.element_type.dis(_ctx), - self.rank.dis(_ctx), - self.shape.dis(_ctx) + self.id_result.dis(ctx), + self.element_type.dis(ctx), + self.rank.dis(ctx), + self.shape.dis(ctx) ) } } @@ -16631,15 +18331,20 @@ impl InstEncoding for OpTensorReadARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorReadARM{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor.dis(_ctx), - self.coordinates.dis(_ctx), - self.tensor_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor.dis(ctx), + self.coordinates.dis(ctx), + self.tensor_operands.dis(ctx) ) } } @@ -16681,13 +18386,18 @@ impl InstEncoding for OpTensorWriteARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpTensorWriteARM{}{}{}{}", - self.tensor.dis(_ctx), - self.coordinates.dis(_ctx), - self.object.dis(_ctx), - self.tensor_operands.dis(_ctx) + self.tensor.dis(ctx), + self.coordinates.dis(ctx), + self.object.dis(ctx), + self.tensor_operands.dis(ctx) ) } } @@ -16729,14 +18439,19 @@ impl InstEncoding for OpTensorQuerySizeARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorQuerySizeARM{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor.dis(_ctx), - self.dimension.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor.dis(ctx), + self.dimension.dis(ctx) ) } } @@ -16774,13 +18489,18 @@ impl InstEncoding for OpGraphConstantARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGraphConstantARM{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.graph_constant_id.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.graph_constant_id.dis(ctx) ) } } @@ -16818,12 +18538,17 @@ impl InstEncoding for OpGraphEntryPointARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpGraphEntryPointARM{}{}{}", - self.graph.dis(_ctx), - self.name.dis(_ctx), - self.interface.dis(_ctx) + self.graph.dis(ctx), + self.name.dis(ctx), + self.interface.dis(ctx) ) } } @@ -16857,12 +18582,17 @@ impl InstEncoding for OpGraphARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGraphARM{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -16904,14 +18634,19 @@ impl InstEncoding for OpGraphInputARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGraphInputARM{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input_index.dis(_ctx), - self.element_index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input_index.dis(ctx), + self.element_index.dis(ctx) ) } } @@ -16949,12 +18684,17 @@ impl InstEncoding for OpGraphSetOutputARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpGraphSetOutputARM{}{}{}", - self.value.dis(_ctx), - self.output_index.dis(_ctx), - self.element_index.dis(_ctx) + self.value.dis(ctx), + self.output_index.dis(ctx), + self.element_index.dis(ctx) ) } } @@ -17015,12 +18755,17 @@ impl InstEncoding for OpTypeGraphARM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeGraphARM{}{}", - self.id_result.dis(_ctx), - self.num_inputs.dis(_ctx), - self.in_out_types.dis(_ctx) + self.id_result.dis(ctx), + self.num_inputs.dis(ctx), + self.in_out_types.dis(ctx) ) } } @@ -17077,11 +18822,16 @@ impl InstEncoding for OpTypeUntypedPointerKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeUntypedPointerKHR{}", - self.id_result.dis(_ctx), - self.storage_class.dis(_ctx) + self.id_result.dis(ctx), + self.storage_class.dis(ctx) ) } } @@ -17127,15 +18877,20 @@ impl InstEncoding for OpUntypedVariableKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedVariableKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.storage_class.dis(_ctx), - self.data_type.dis(_ctx), - self.initializer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.storage_class.dis(ctx), + self.data_type.dis(ctx), + self.initializer.dis(ctx) ) } } @@ -17181,15 +18936,20 @@ impl InstEncoding for OpUntypedAccessChainKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base_type.dis(_ctx), - self.base.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base_type.dis(ctx), + self.base.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -17235,15 +18995,20 @@ impl InstEncoding for OpUntypedInBoundsAccessChainKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedInBoundsAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base_type.dis(_ctx), - self.base.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base_type.dis(ctx), + self.base.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -17281,13 +19046,18 @@ impl InstEncoding for OpSubgroupBallotKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupBallotKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -17325,13 +19095,18 @@ impl InstEncoding for OpSubgroupFirstInvocationKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupFirstInvocationKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx) ) } } @@ -17381,16 +19156,21 @@ impl InstEncoding for OpUntypedPtrAccessChainKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedPtrAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base_type.dis(_ctx), - self.base.dis(_ctx), - self.element.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base_type.dis(ctx), + self.base.dis(ctx), + self.element.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -17440,16 +19220,21 @@ impl InstEncoding for OpUntypedInBoundsPtrAccessChainKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedInBoundsPtrAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base_type.dis(_ctx), - self.base.dis(_ctx), - self.element.dis(_ctx), - self.indexes.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base_type.dis(ctx), + self.base.dis(ctx), + self.element.dis(ctx), + self.indexes.dis(ctx) ) } } @@ -17495,15 +19280,20 @@ impl InstEncoding for OpUntypedArrayLengthKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedArrayLengthKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.structure.dis(_ctx), - self.pointer.dis(_ctx), - self.array_member.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.structure.dis(ctx), + self.pointer.dis(ctx), + self.array_member.dis(ctx) ) } } @@ -17549,14 +19339,19 @@ impl InstEncoding for OpUntypedPrefetchKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpUntypedPrefetchKHR{}{}{}{}{}", - self.pointer_type.dis(_ctx), - self.num_bytes.dis(_ctx), - self.rw.dis(_ctx), - self.locality.dis(_ctx), - self.cache_type.dis(_ctx) + self.pointer_type.dis(ctx), + self.num_bytes.dis(ctx), + self.rw.dis(ctx), + self.locality.dis(ctx), + self.cache_type.dis(ctx) ) } } @@ -17602,15 +19397,20 @@ impl InstEncoding for OpFmaKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFmaKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx), - self.operand_3.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx), + self.operand_3.dis(ctx) ) } } @@ -17648,13 +19448,18 @@ impl InstEncoding for OpSubgroupAllKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAllKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -17692,13 +19497,18 @@ impl InstEncoding for OpSubgroupAnyKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAnyKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -17736,13 +19546,18 @@ impl InstEncoding for OpSubgroupAllEqualKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAllEqualKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -17792,16 +19607,21 @@ impl InstEncoding for OpGroupNonUniformRotateKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformRotateKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.value.dis(_ctx), - self.delta.dis(_ctx), - self.cluster_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.value.dis(ctx), + self.delta.dis(ctx), + self.cluster_size.dis(ctx) ) } } @@ -17843,14 +19663,19 @@ impl InstEncoding for OpSubgroupReadInvocationKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupReadInvocationKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx), - self.index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx), + self.index.dis(ctx) ) } } @@ -17896,15 +19721,20 @@ impl InstEncoding for OpExtInstWithForwardRefsKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpExtInstWithForwardRefsKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.set.dis(_ctx), - self.instruction.dis(_ctx), - self.id_ref.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.set.dis(ctx), + self.instruction.dis(ctx), + self.id_ref.dis(ctx) ) } } @@ -17974,21 +19804,26 @@ impl InstEncoding for OpUntypedGroupAsyncCopyKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedGroupAsyncCopyKHR{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.destination.dis(_ctx), - self.source.dis(_ctx), - self.element_num_bytes.dis(_ctx), - self.num_elements.dis(_ctx), - self.stride.dis(_ctx), - self.event.dis(_ctx), - self.destination_memory_operands.dis(_ctx), - self.source_memory_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.destination.dis(ctx), + self.source.dis(ctx), + self.element_num_bytes.dis(ctx), + self.num_elements.dis(ctx), + self.stride.dis(ctx), + self.event.dis(ctx), + self.destination_memory_operands.dis(ctx), + self.source_memory_operands.dis(ctx) ) } } @@ -18058,20 +19893,25 @@ impl InstEncoding for OpTraceRayKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpTraceRayKHR{}{}{}{}{}{}{}{}{}{}{}", - self.accel.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.sbt_offset.dis(_ctx), - self.sbt_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.payload.dis(_ctx) + self.accel.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.sbt_offset.dis(ctx), + self.sbt_stride.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.payload.dis(ctx) ) } } @@ -18105,11 +19945,16 @@ impl InstEncoding for OpExecuteCallableKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpExecuteCallableKHR{}{}", - self.sbt_index.dis(_ctx), - self.callable_data.dis(_ctx) + self.sbt_index.dis(ctx), + self.callable_data.dis(ctx) ) } } @@ -18147,13 +19992,18 @@ impl InstEncoding for OpConvertUToAccelerationStructureKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertUToAccelerationStructureKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.accel.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.accel.dis(ctx) ) } } @@ -18245,15 +20095,20 @@ impl InstEncoding for OpSDot { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSDot{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx), - self.packed_vector_format.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx), + self.packed_vector_format.dis(ctx) ) } } @@ -18299,15 +20154,20 @@ impl InstEncoding for OpUDot { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUDot{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx), - self.packed_vector_format.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx), + self.packed_vector_format.dis(ctx) ) } } @@ -18353,15 +20213,20 @@ impl InstEncoding for OpSUDot { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSUDot{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx), - self.packed_vector_format.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx), + self.packed_vector_format.dis(ctx) ) } } @@ -18411,16 +20276,21 @@ impl InstEncoding for OpSDotAccSat { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx), - self.accumulator.dis(_ctx), - self.packed_vector_format.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx), + self.accumulator.dis(ctx), + self.packed_vector_format.dis(ctx) ) } } @@ -18470,16 +20340,21 @@ impl InstEncoding for OpUDotAccSat { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx), - self.accumulator.dis(_ctx), - self.packed_vector_format.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx), + self.accumulator.dis(ctx), + self.packed_vector_format.dis(ctx) ) } } @@ -18529,16 +20404,21 @@ impl InstEncoding for OpSUDotAccSat { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSUDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.vector_1.dis(_ctx), - self.vector_2.dis(_ctx), - self.accumulator.dis(_ctx), - self.packed_vector_format.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.vector_1.dis(ctx), + self.vector_2.dis(ctx), + self.accumulator.dis(ctx), + self.packed_vector_format.dis(ctx) ) } } @@ -18588,15 +20468,20 @@ impl InstEncoding for OpTypeCooperativeMatrixKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeCooperativeMatrixKHR{}{}{}{}{}", - self.id_result.dis(_ctx), - self.component_type.dis(_ctx), - self.scope.dis(_ctx), - self.rows.dis(_ctx), - self.columns.dis(_ctx), - self.usage.dis(_ctx) + self.id_result.dis(ctx), + self.component_type.dis(ctx), + self.scope.dis(ctx), + self.rows.dis(ctx), + self.columns.dis(ctx), + self.usage.dis(ctx) ) } } @@ -18646,16 +20531,21 @@ impl InstEncoding for OpCooperativeMatrixLoadKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixLoadKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory_layout.dis(_ctx), - self.stride.dis(_ctx), - self.memory_operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory_layout.dis(ctx), + self.stride.dis(ctx), + self.memory_operand.dis(ctx) ) } } @@ -18701,14 +20591,19 @@ impl InstEncoding for OpCooperativeMatrixStoreKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCooperativeMatrixStoreKHR{}{}{}{}{}", - self.pointer.dis(_ctx), - self.object.dis(_ctx), - self.memory_layout.dis(_ctx), - self.stride.dis(_ctx), - self.memory_operand.dis(_ctx) + self.pointer.dis(ctx), + self.object.dis(ctx), + self.memory_layout.dis(ctx), + self.stride.dis(ctx), + self.memory_operand.dis(ctx) ) } } @@ -18758,16 +20653,21 @@ impl InstEncoding for OpCooperativeMatrixMulAddKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixMulAddKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.b.dis(_ctx), - self.c.dis(_ctx), - self.cooperative_matrix_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.b.dis(ctx), + self.c.dis(ctx), + self.cooperative_matrix_operands.dis(ctx) ) } } @@ -18805,13 +20705,18 @@ impl InstEncoding for OpCooperativeMatrixLengthKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixLengthKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ty.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ty.dis(ctx) ) } } @@ -18849,13 +20754,18 @@ impl InstEncoding for OpConstantCompositeReplicateEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantCompositeReplicateEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx) ) } } @@ -18893,13 +20803,18 @@ impl InstEncoding for OpSpecConstantCompositeReplicateEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstantCompositeReplicateEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx) ) } } @@ -18937,13 +20852,18 @@ impl InstEncoding for OpCompositeConstructReplicateEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCompositeConstructReplicateEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx) ) } } @@ -18972,7 +20892,12 @@ impl InstEncoding for OpTypeRayQueryKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeRayQueryKHR", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeRayQueryKHR", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -19029,17 +20954,22 @@ impl InstEncoding for OpRayQueryInitializeKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpRayQueryInitializeKHR{}{}{}{}{}{}{}{}", - self.ray_query.dis(_ctx), - self.accel.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_t_min.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_t_max.dis(_ctx) + self.ray_query.dis(ctx), + self.accel.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_t_min.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_t_max.dis(ctx) ) } } @@ -19068,7 +20998,12 @@ impl InstEncoding for OpRayQueryTerminateKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpRayQueryTerminateKHR{}", self.ray_query.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpRayQueryTerminateKHR{}", self.ray_query.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -19100,11 +21035,16 @@ impl InstEncoding for OpRayQueryGenerateIntersectionKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpRayQueryGenerateIntersectionKHR{}{}", - self.ray_query.dis(_ctx), - self.hit_t.dis(_ctx) + self.ray_query.dis(ctx), + self.hit_t.dis(ctx) ) } } @@ -19133,10 +21073,15 @@ impl InstEncoding for OpRayQueryConfirmIntersectionKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpRayQueryConfirmIntersectionKHR{}", - self.ray_query.dis(_ctx) + self.ray_query.dis(ctx) ) } } @@ -19174,13 +21119,18 @@ impl InstEncoding for OpRayQueryProceedKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryProceedKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx) ) } } @@ -19222,14 +21172,19 @@ impl InstEncoding for OpRayQueryGetIntersectionTypeKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionTypeKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -19275,15 +21230,20 @@ impl InstEncoding for OpImageSampleWeightedQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleWeightedQCOM{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.texture.dis(_ctx), - self.coordinates.dis(_ctx), - self.weights.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.texture.dis(ctx), + self.coordinates.dis(ctx), + self.weights.dis(ctx) ) } } @@ -19329,15 +21289,20 @@ impl InstEncoding for OpImageBoxFilterQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageBoxFilterQCOM{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.texture.dis(_ctx), - self.coordinates.dis(_ctx), - self.box_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.texture.dis(ctx), + self.coordinates.dis(ctx), + self.box_size.dis(ctx) ) } } @@ -19391,17 +21356,22 @@ impl InstEncoding for OpImageBlockMatchSSDQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageBlockMatchSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.target.dis(_ctx), - self.target_coordinates.dis(_ctx), - self.reference.dis(_ctx), - self.reference_coordinates.dis(_ctx), - self.block_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.target.dis(ctx), + self.target_coordinates.dis(ctx), + self.reference.dis(ctx), + self.reference_coordinates.dis(ctx), + self.block_size.dis(ctx) ) } } @@ -19455,17 +21425,22 @@ impl InstEncoding for OpImageBlockMatchSADQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageBlockMatchSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.target.dis(_ctx), - self.target_coordinates.dis(_ctx), - self.reference.dis(_ctx), - self.reference_coordinates.dis(_ctx), - self.block_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.target.dis(ctx), + self.target_coordinates.dis(ctx), + self.reference.dis(ctx), + self.reference_coordinates.dis(ctx), + self.block_size.dis(ctx) ) } } @@ -19503,13 +21478,18 @@ impl InstEncoding for OpBitCastArrayQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitCastArrayQCOM{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.source_array.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.source_array.dis(ctx) ) } } @@ -19563,17 +21543,22 @@ impl InstEncoding for OpImageBlockMatchWindowSSDQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageBlockMatchWindowSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.target_sampled_image.dis(_ctx), - self.target_coordinates.dis(_ctx), - self.reference_sampled_image.dis(_ctx), - self.reference_coordinates.dis(_ctx), - self.block_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.target_sampled_image.dis(ctx), + self.target_coordinates.dis(ctx), + self.reference_sampled_image.dis(ctx), + self.reference_coordinates.dis(ctx), + self.block_size.dis(ctx) ) } } @@ -19627,17 +21612,22 @@ impl InstEncoding for OpImageBlockMatchWindowSADQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageBlockMatchWindowSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.target_sampled_image.dis(_ctx), - self.target_coordinates.dis(_ctx), - self.reference_sampled_image.dis(_ctx), - self.reference_coordinates.dis(_ctx), - self.block_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.target_sampled_image.dis(ctx), + self.target_coordinates.dis(ctx), + self.reference_sampled_image.dis(ctx), + self.reference_coordinates.dis(ctx), + self.block_size.dis(ctx) ) } } @@ -19691,17 +21681,22 @@ impl InstEncoding for OpImageBlockMatchGatherSSDQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageBlockMatchGatherSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.target_sampled_image.dis(_ctx), - self.target_coordinates.dis(_ctx), - self.reference_sampled_image.dis(_ctx), - self.reference_coordinates.dis(_ctx), - self.block_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.target_sampled_image.dis(ctx), + self.target_coordinates.dis(ctx), + self.reference_sampled_image.dis(ctx), + self.reference_coordinates.dis(ctx), + self.block_size.dis(ctx) ) } } @@ -19755,17 +21750,22 @@ impl InstEncoding for OpImageBlockMatchGatherSADQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageBlockMatchGatherSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.target_sampled_image.dis(_ctx), - self.target_coordinates.dis(_ctx), - self.reference_sampled_image.dis(_ctx), - self.reference_coordinates.dis(_ctx), - self.block_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.target_sampled_image.dis(ctx), + self.target_coordinates.dis(ctx), + self.reference_sampled_image.dis(ctx), + self.reference_coordinates.dis(ctx), + self.block_size.dis(ctx) ) } } @@ -19803,13 +21803,18 @@ impl InstEncoding for OpCompositeConstructCoopMatQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCompositeConstructCoopMatQCOM{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.source_array.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.source_array.dis(ctx) ) } } @@ -19847,13 +21852,18 @@ impl InstEncoding for OpCompositeExtractCoopMatQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCompositeExtractCoopMatQCOM{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.source_cooperative_matrix.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.source_cooperative_matrix.dis(ctx) ) } } @@ -19895,14 +21905,19 @@ impl InstEncoding for OpExtractSubArrayQCOM { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpExtractSubArrayQCOM{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.source_array.dis(_ctx), - self.index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.source_array.dis(ctx), + self.index.dis(ctx) ) } } @@ -19948,15 +21963,20 @@ impl InstEncoding for OpGroupIAddNonUniformAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupIAddNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -20002,15 +22022,20 @@ impl InstEncoding for OpGroupFAddNonUniformAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupFAddNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -20056,15 +22081,20 @@ impl InstEncoding for OpGroupFMinNonUniformAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupFMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -20110,15 +22140,20 @@ impl InstEncoding for OpGroupUMinNonUniformAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupUMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -20164,15 +22199,20 @@ impl InstEncoding for OpGroupSMinNonUniformAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupSMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -20218,15 +22258,20 @@ impl InstEncoding for OpGroupFMaxNonUniformAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupFMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -20272,15 +22317,20 @@ impl InstEncoding for OpGroupUMaxNonUniformAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupUMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -20326,15 +22376,20 @@ impl InstEncoding for OpGroupSMaxNonUniformAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupSMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -20376,14 +22431,19 @@ impl InstEncoding for OpFragmentMaskFetchAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFragmentMaskFetchAMD{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx) ) } } @@ -20429,15 +22489,20 @@ impl InstEncoding for OpFragmentFetchAMD { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFragmentFetchAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.fragment_index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.fragment_index.dis(ctx) ) } } @@ -20475,13 +22540,18 @@ impl InstEncoding for OpReadClockKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpReadClockKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.scope.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.scope.dis(ctx) ) } } @@ -20527,15 +22597,20 @@ impl InstEncoding for OpAllocateNodePayloadsAMDX { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAllocateNodePayloadsAMDX{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.visibility.dis(_ctx), - self.payload_count.dis(_ctx), - self.node_index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.visibility.dis(ctx), + self.payload_count.dis(ctx), + self.node_index.dis(ctx) ) } } @@ -20564,10 +22639,15 @@ impl InstEncoding for OpEnqueueNodePayloadsAMDX { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpEnqueueNodePayloadsAMDX{}", - self.payload_array.dis(_ctx) + self.payload_array.dis(ctx) ) } } @@ -20601,11 +22681,16 @@ impl InstEncoding for OpTypeNodePayloadArrayAMDX { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeNodePayloadArrayAMDX{}", - self.id_result.dis(_ctx), - self.payload_type.dis(_ctx) + self.id_result.dis(ctx), + self.payload_type.dis(ctx) ) } } @@ -20643,13 +22728,18 @@ impl InstEncoding for OpFinishWritingNodePayloadAMDX { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFinishWritingNodePayloadAMDX{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -20687,13 +22777,18 @@ impl InstEncoding for OpNodePayloadArrayLengthAMDX { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpNodePayloadArrayLengthAMDX{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload_array.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload_array.dis(ctx) ) } } @@ -20735,14 +22830,19 @@ impl InstEncoding for OpIsNodePayloadValidAMDX { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIsNodePayloadValidAMDX{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload_type.dis(_ctx), - self.node_index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload_type.dis(ctx), + self.node_index.dis(ctx) ) } } @@ -20776,11 +22876,16 @@ impl InstEncoding for OpConstantStringAMDX { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpConstantStringAMDX{}", - self.id_result.dis(_ctx), - self.literal_string.dis(_ctx) + self.id_result.dis(ctx), + self.literal_string.dis(ctx) ) } } @@ -20814,11 +22919,16 @@ impl InstEncoding for OpSpecConstantStringAMDX { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpSpecConstantStringAMDX{}", - self.id_result.dis(_ctx), - self.literal_string.dis(_ctx) + self.id_result.dis(ctx), + self.literal_string.dis(ctx) ) } } @@ -20856,13 +22966,18 @@ impl InstEncoding for OpGroupNonUniformQuadAllKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformQuadAllKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -20900,13 +23015,18 @@ impl InstEncoding for OpGroupNonUniformQuadAnyKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformQuadAnyKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.predicate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.predicate.dis(ctx) ) } } @@ -20940,11 +23060,16 @@ impl InstEncoding for OpTypeBufferEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeBufferEXT{}", - self.id_result.dis(_ctx), - self.storage_class.dis(_ctx) + self.id_result.dis(ctx), + self.storage_class.dis(ctx) ) } } @@ -20982,13 +23107,18 @@ impl InstEncoding for OpBufferPointerEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBufferPointerEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.buffer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.buffer.dis(ctx) ) } } @@ -21038,16 +23168,21 @@ impl InstEncoding for OpUntypedImageTexelPointerEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedImageTexelPointerEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.sample.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.sample.dis(ctx) ) } } @@ -21085,12 +23220,17 @@ impl InstEncoding for OpMemberDecorateIdEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpMemberDecorateIdEXT{}{}{}", - self.structure_type.dis(_ctx), - self.member.dis(_ctx), - self.decoration.dis(_ctx) + self.structure_type.dis(ctx), + self.member.dis(ctx), + self.decoration.dis(ctx) ) } } @@ -21128,13 +23268,18 @@ impl InstEncoding for OpConstantSizeOfEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantSizeOfEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ty.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ty.dis(ctx) ) } } @@ -21216,23 +23361,28 @@ impl InstEncoding for OpHitObjectRecordHitMotionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordHitMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.instance_id.dis(_ctx), - self.primitive_id.dis(_ctx), - self.geometry_index.dis(_ctx), - self.hit_kind.dis(_ctx), - self.sbt_record_offset.dis(_ctx), - self.sbt_record_stride.dis(_ctx), - self.origin.dis(_ctx), - self.t_min.dis(_ctx), - self.direction.dis(_ctx), - self.t_max.dis(_ctx), - self.current_time.dis(_ctx), - self.hit_object_attributes.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.instance_id.dis(ctx), + self.primitive_id.dis(ctx), + self.geometry_index.dis(ctx), + self.hit_kind.dis(ctx), + self.sbt_record_offset.dis(ctx), + self.sbt_record_stride.dis(ctx), + self.origin.dis(ctx), + self.t_min.dis(ctx), + self.direction.dis(ctx), + self.t_max.dis(ctx), + self.current_time.dis(ctx), + self.hit_object_attributes.dis(ctx) ) } } @@ -21310,22 +23460,27 @@ impl InstEncoding for OpHitObjectRecordHitWithIndexMotionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordHitWithIndexMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.instance_id.dis(_ctx), - self.primitive_id.dis(_ctx), - self.geometry_index.dis(_ctx), - self.hit_kind.dis(_ctx), - self.sbt_record_index.dis(_ctx), - self.origin.dis(_ctx), - self.t_min.dis(_ctx), - self.direction.dis(_ctx), - self.t_max.dis(_ctx), - self.current_time.dis(_ctx), - self.hit_object_attributes.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.instance_id.dis(ctx), + self.primitive_id.dis(ctx), + self.geometry_index.dis(ctx), + self.hit_kind.dis(ctx), + self.sbt_record_index.dis(ctx), + self.origin.dis(ctx), + self.t_min.dis(ctx), + self.direction.dis(ctx), + self.t_max.dis(ctx), + self.current_time.dis(ctx), + self.hit_object_attributes.dis(ctx) ) } } @@ -21379,16 +23534,21 @@ impl InstEncoding for OpHitObjectRecordMissMotionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordMissMotionNV{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.sbt_index.dis(_ctx), - self.origin.dis(_ctx), - self.t_min.dis(_ctx), - self.direction.dis(_ctx), - self.t_max.dis(_ctx), - self.current_time.dis(_ctx) + self.hit_object.dis(ctx), + self.sbt_index.dis(ctx), + self.origin.dis(ctx), + self.t_min.dis(ctx), + self.direction.dis(ctx), + self.t_max.dis(ctx), + self.current_time.dis(ctx) ) } } @@ -21426,13 +23586,18 @@ impl InstEncoding for OpHitObjectGetWorldToObjectNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetWorldToObjectNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -21470,13 +23635,18 @@ impl InstEncoding for OpHitObjectGetObjectToWorldNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetObjectToWorldNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -21514,13 +23684,18 @@ impl InstEncoding for OpHitObjectGetObjectRayDirectionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetObjectRayDirectionNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -21558,13 +23733,18 @@ impl InstEncoding for OpHitObjectGetObjectRayOriginNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetObjectRayOriginNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -21642,22 +23822,27 @@ impl InstEncoding for OpHitObjectTraceRayMotionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectTraceRayMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cullmask.dis(_ctx), - self.sbt_record_offset.dis(_ctx), - self.sbt_record_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.origin.dis(_ctx), - self.t_min.dis(_ctx), - self.direction.dis(_ctx), - self.t_max.dis(_ctx), - self.time.dis(_ctx), - self.payload.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.ray_flags.dis(ctx), + self.cullmask.dis(ctx), + self.sbt_record_offset.dis(ctx), + self.sbt_record_stride.dis(ctx), + self.miss_index.dis(ctx), + self.origin.dis(ctx), + self.t_min.dis(ctx), + self.direction.dis(ctx), + self.t_max.dis(ctx), + self.time.dis(ctx), + self.payload.dis(ctx) ) } } @@ -21695,13 +23880,18 @@ impl InstEncoding for OpHitObjectGetShaderRecordBufferHandleNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetShaderRecordBufferHandleNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -21739,13 +23929,18 @@ impl InstEncoding for OpHitObjectGetShaderBindingTableRecordIndexNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetShaderBindingTableRecordIndexNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -21774,7 +23969,12 @@ impl InstEncoding for OpHitObjectRecordEmptyNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpHitObjectRecordEmptyNV{}", self.hit_object.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpHitObjectRecordEmptyNV{}", self.hit_object.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -21847,21 +24047,26 @@ impl InstEncoding for OpHitObjectTraceRayNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectTraceRayNV{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cullmask.dis(_ctx), - self.sbt_record_offset.dis(_ctx), - self.sbt_record_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.origin.dis(_ctx), - self.t_min.dis(_ctx), - self.direction.dis(_ctx), - self.t_max.dis(_ctx), - self.payload.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.ray_flags.dis(ctx), + self.cullmask.dis(ctx), + self.sbt_record_offset.dis(ctx), + self.sbt_record_stride.dis(ctx), + self.miss_index.dis(ctx), + self.origin.dis(ctx), + self.t_min.dis(ctx), + self.direction.dis(ctx), + self.t_max.dis(ctx), + self.payload.dis(ctx) ) } } @@ -21939,22 +24144,27 @@ impl InstEncoding for OpHitObjectRecordHitNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordHitNV{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.instance_id.dis(_ctx), - self.primitive_id.dis(_ctx), - self.geometry_index.dis(_ctx), - self.hit_kind.dis(_ctx), - self.sbt_record_offset.dis(_ctx), - self.sbt_record_stride.dis(_ctx), - self.origin.dis(_ctx), - self.t_min.dis(_ctx), - self.direction.dis(_ctx), - self.t_max.dis(_ctx), - self.hit_object_attributes.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.instance_id.dis(ctx), + self.primitive_id.dis(ctx), + self.geometry_index.dis(ctx), + self.hit_kind.dis(ctx), + self.sbt_record_offset.dis(ctx), + self.sbt_record_stride.dis(ctx), + self.origin.dis(ctx), + self.t_min.dis(ctx), + self.direction.dis(ctx), + self.t_max.dis(ctx), + self.hit_object_attributes.dis(ctx) ) } } @@ -22028,21 +24238,26 @@ impl InstEncoding for OpHitObjectRecordHitWithIndexNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordHitWithIndexNV{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.instance_id.dis(_ctx), - self.primitive_id.dis(_ctx), - self.geometry_index.dis(_ctx), - self.hit_kind.dis(_ctx), - self.sbt_record_index.dis(_ctx), - self.origin.dis(_ctx), - self.t_min.dis(_ctx), - self.direction.dis(_ctx), - self.t_max.dis(_ctx), - self.hit_object_attributes.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.instance_id.dis(ctx), + self.primitive_id.dis(ctx), + self.geometry_index.dis(ctx), + self.hit_kind.dis(ctx), + self.sbt_record_index.dis(ctx), + self.origin.dis(ctx), + self.t_min.dis(ctx), + self.direction.dis(ctx), + self.t_max.dis(ctx), + self.hit_object_attributes.dis(ctx) ) } } @@ -22092,15 +24307,20 @@ impl InstEncoding for OpHitObjectRecordMissNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordMissNV{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.sbt_index.dis(_ctx), - self.origin.dis(_ctx), - self.t_min.dis(_ctx), - self.direction.dis(_ctx), - self.t_max.dis(_ctx) + self.hit_object.dis(ctx), + self.sbt_index.dis(ctx), + self.origin.dis(ctx), + self.t_min.dis(ctx), + self.direction.dis(ctx), + self.t_max.dis(ctx) ) } } @@ -22134,11 +24354,16 @@ impl InstEncoding for OpHitObjectExecuteShaderNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectExecuteShaderNV{}{}", - self.hit_object.dis(_ctx), - self.payload.dis(_ctx) + self.hit_object.dis(ctx), + self.payload.dis(ctx) ) } } @@ -22176,13 +24401,18 @@ impl InstEncoding for OpHitObjectGetCurrentTimeNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetCurrentTimeNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22216,11 +24446,16 @@ impl InstEncoding for OpHitObjectGetAttributesNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectGetAttributesNV{}{}", - self.hit_object.dis(_ctx), - self.hit_object_attribute.dis(_ctx) + self.hit_object.dis(ctx), + self.hit_object_attribute.dis(ctx) ) } } @@ -22258,13 +24493,18 @@ impl InstEncoding for OpHitObjectGetHitKindNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetHitKindNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22302,13 +24542,18 @@ impl InstEncoding for OpHitObjectGetPrimitiveIndexNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetPrimitiveIndexNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22346,13 +24591,18 @@ impl InstEncoding for OpHitObjectGetGeometryIndexNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetGeometryIndexNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22390,13 +24640,18 @@ impl InstEncoding for OpHitObjectGetInstanceIdNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetInstanceIdNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22434,13 +24689,18 @@ impl InstEncoding for OpHitObjectGetInstanceCustomIndexNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetInstanceCustomIndexNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22478,13 +24738,18 @@ impl InstEncoding for OpHitObjectGetWorldRayDirectionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetWorldRayDirectionNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22522,13 +24787,18 @@ impl InstEncoding for OpHitObjectGetWorldRayOriginNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetWorldRayOriginNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22566,13 +24836,18 @@ impl InstEncoding for OpHitObjectGetRayTMaxNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetRayTMaxNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22610,13 +24885,18 @@ impl InstEncoding for OpHitObjectGetRayTMinNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetRayTMinNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22654,13 +24934,18 @@ impl InstEncoding for OpHitObjectIsEmptyNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectIsEmptyNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22698,13 +24983,18 @@ impl InstEncoding for OpHitObjectIsHitNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectIsHitNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22742,13 +25032,18 @@ impl InstEncoding for OpHitObjectIsMissNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectIsMissNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -22786,12 +25081,17 @@ impl InstEncoding for OpReorderThreadWithHitObjectNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpReorderThreadWithHitObjectNV{}{}{}", - self.hit_object.dis(_ctx), - self.hint.dis(_ctx), - self.bits.dis(_ctx) + self.hit_object.dis(ctx), + self.hint.dis(ctx), + self.bits.dis(ctx) ) } } @@ -22823,11 +25123,16 @@ impl InstEncoding for OpReorderThreadWithHintNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpReorderThreadWithHintNV{}{}", - self.hint.dis(_ctx), - self.bits.dis(_ctx) + self.hint.dis(ctx), + self.bits.dis(ctx) ) } } @@ -22856,7 +25161,12 @@ impl InstEncoding for OpTypeHitObjectNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeHitObjectNV", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeHitObjectNV", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -22909,17 +25219,22 @@ impl InstEncoding for OpImageSampleFootprintNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpImageSampleFootprintNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sampled_image.dis(_ctx), - self.coordinate.dis(_ctx), - self.granularity.dis(_ctx), - self.coarse.dis(_ctx), - self.image_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sampled_image.dis(ctx), + self.coordinate.dis(ctx), + self.granularity.dis(ctx), + self.coarse.dis(ctx), + self.image_operands.dis(ctx) ) } } @@ -22957,12 +25272,17 @@ impl InstEncoding for OpTypeVectorIdEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeVectorIdEXT{}{}", - self.id_result.dis(_ctx), - self.component_type.dis(_ctx), - self.component_count.dis(_ctx) + self.id_result.dis(ctx), + self.component_type.dis(ctx), + self.component_count.dis(ctx) ) } } @@ -23040,23 +25360,28 @@ impl InstEncoding for OpCooperativeVectorMatrixMulNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeVectorMatrixMulNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.input_interpretation.dis(_ctx), - self.matrix.dis(_ctx), - self.matrix_offset.dis(_ctx), - self.matrix_interpretation.dis(_ctx), - self.m.dis(_ctx), - self.k.dis(_ctx), - self.memory_layout.dis(_ctx), - self.transpose.dis(_ctx), - self.matrix_stride.dis(_ctx), - self.cooperative_matrix_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.input_interpretation.dis(ctx), + self.matrix.dis(ctx), + self.matrix_offset.dis(ctx), + self.matrix_interpretation.dis(ctx), + self.m.dis(ctx), + self.k.dis(ctx), + self.memory_layout.dis(ctx), + self.transpose.dis(ctx), + self.matrix_stride.dis(ctx), + self.cooperative_matrix_operands.dis(ctx) ) } } @@ -23110,16 +25435,21 @@ impl InstEncoding for OpCooperativeVectorOuterProductAccumulateNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCooperativeVectorOuterProductAccumulateNV{}{}{}{}{}{}{}", - self.pointer.dis(_ctx), - self.offset.dis(_ctx), - self.a.dis(_ctx), - self.b.dis(_ctx), - self.memory_layout.dis(_ctx), - self.matrix_interpretation.dis(_ctx), - self.matrix_stride.dis(_ctx) + self.pointer.dis(ctx), + self.offset.dis(ctx), + self.a.dis(ctx), + self.b.dis(ctx), + self.memory_layout.dis(ctx), + self.matrix_interpretation.dis(ctx), + self.matrix_stride.dis(ctx) ) } } @@ -23157,12 +25487,17 @@ impl InstEncoding for OpCooperativeVectorReduceSumAccumulateNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCooperativeVectorReduceSumAccumulateNV{}{}{}", - self.pointer.dis(_ctx), - self.offset.dis(_ctx), - self.v.dis(_ctx) + self.pointer.dis(ctx), + self.offset.dis(ctx), + self.v.dis(ctx) ) } } @@ -23252,26 +25587,31 @@ impl InstEncoding for OpCooperativeVectorMatrixMulAddNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeVectorMatrixMulAddNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.input_interpretation.dis(_ctx), - self.matrix.dis(_ctx), - self.matrix_offset.dis(_ctx), - self.matrix_interpretation.dis(_ctx), - self.bias.dis(_ctx), - self.bias_offset.dis(_ctx), - self.bias_interpretation.dis(_ctx), - self.m.dis(_ctx), - self.k.dis(_ctx), - self.memory_layout.dis(_ctx), - self.transpose.dis(_ctx), - self.matrix_stride.dis(_ctx), - self.cooperative_matrix_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.input_interpretation.dis(ctx), + self.matrix.dis(ctx), + self.matrix_offset.dis(ctx), + self.matrix_interpretation.dis(ctx), + self.bias.dis(ctx), + self.bias_offset.dis(ctx), + self.bias_interpretation.dis(ctx), + self.m.dis(ctx), + self.k.dis(ctx), + self.memory_layout.dis(ctx), + self.transpose.dis(ctx), + self.matrix_stride.dis(ctx), + self.cooperative_matrix_operands.dis(ctx) ) } } @@ -23309,13 +25649,18 @@ impl InstEncoding for OpCooperativeMatrixConvertNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixConvertNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.matrix.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.matrix.dis(ctx) ) } } @@ -23357,13 +25702,18 @@ impl InstEncoding for OpEmitMeshTasksEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpEmitMeshTasksEXT{}{}{}{}", - self.group_count_x.dis(_ctx), - self.group_count_y.dis(_ctx), - self.group_count_z.dis(_ctx), - self.payload.dis(_ctx) + self.group_count_x.dis(ctx), + self.group_count_y.dis(ctx), + self.group_count_z.dis(ctx), + self.payload.dis(ctx) ) } } @@ -23397,11 +25747,16 @@ impl InstEncoding for OpSetMeshOutputsEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSetMeshOutputsEXT{}{}", - self.vertex_count.dis(_ctx), - self.primitive_count.dis(_ctx) + self.vertex_count.dis(ctx), + self.primitive_count.dis(ctx) ) } } @@ -23439,13 +25794,18 @@ impl InstEncoding for OpGroupNonUniformPartitionEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupNonUniformPartitionEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx) ) } } @@ -23479,11 +25839,16 @@ impl InstEncoding for OpWritePackedPrimitiveIndices4x8NV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpWritePackedPrimitiveIndices4x8NV{}{}", - self.index_offset.dis(_ctx), - self.packed_indices.dis(_ctx) + self.index_offset.dis(ctx), + self.packed_indices.dis(ctx) ) } } @@ -23537,17 +25902,22 @@ impl InstEncoding for OpFetchMicroTriangleVertexPositionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFetchMicroTriangleVertexPositionNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.accel.dis(_ctx), - self.instance_id.dis(_ctx), - self.geometry_index.dis(_ctx), - self.primitive_index.dis(_ctx), - self.barycentric.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.accel.dis(ctx), + self.instance_id.dis(ctx), + self.geometry_index.dis(ctx), + self.primitive_index.dis(ctx), + self.barycentric.dis(ctx) ) } } @@ -23601,17 +25971,22 @@ impl InstEncoding for OpFetchMicroTriangleVertexBarycentricNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFetchMicroTriangleVertexBarycentricNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.accel.dis(_ctx), - self.instance_id.dis(_ctx), - self.geometry_index.dis(_ctx), - self.primitive_index.dis(_ctx), - self.barycentric.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.accel.dis(ctx), + self.instance_id.dis(ctx), + self.geometry_index.dis(ctx), + self.primitive_index.dis(ctx), + self.barycentric.dis(ctx) ) } } @@ -23657,15 +26032,20 @@ impl InstEncoding for OpCooperativeVectorLoadNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeVectorLoadNV{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.offset.dis(_ctx), - self.memory_access.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.offset.dis(ctx), + self.memory_access.dis(ctx) ) } } @@ -23707,13 +26087,18 @@ impl InstEncoding for OpCooperativeVectorStoreNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCooperativeVectorStoreNV{}{}{}{}", - self.pointer.dis(_ctx), - self.offset.dis(_ctx), - self.object.dis(_ctx), - self.memory_access.dis(_ctx) + self.pointer.dis(ctx), + self.offset.dis(ctx), + self.object.dis(ctx), + self.memory_access.dis(ctx) ) } } @@ -23755,13 +26140,18 @@ impl InstEncoding for OpHitObjectRecordFromQueryEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordFromQueryEXT{}{}{}{}", - self.hit_object.dis(_ctx), - self.ray_query.dis(_ctx), - self.sbt_record_index.dis(_ctx), - self.hit_object_attributes.dis(_ctx) + self.hit_object.dis(ctx), + self.ray_query.dis(ctx), + self.sbt_record_index.dis(ctx), + self.hit_object_attributes.dis(ctx) ) } } @@ -23815,16 +26205,21 @@ impl InstEncoding for OpHitObjectRecordMissEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordMissEXT{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.ray_flags.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx) + self.hit_object.dis(ctx), + self.ray_flags.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx) ) } } @@ -23882,17 +26277,22 @@ impl InstEncoding for OpHitObjectRecordMissMotionEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectRecordMissMotionEXT{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.ray_flags.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.current_time.dis(_ctx) + self.hit_object.dis(ctx), + self.ray_flags.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.current_time.dis(ctx) ) } } @@ -23930,13 +26330,18 @@ impl InstEncoding for OpHitObjectGetIntersectionTriangleVertexPositionsEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetIntersectionTriangleVertexPositionsEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -23974,13 +26379,18 @@ impl InstEncoding for OpHitObjectGetRayFlagsEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetRayFlagsEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -24014,11 +26424,16 @@ impl InstEncoding for OpHitObjectSetShaderBindingTableRecordIndexEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectSetShaderBindingTableRecordIndexEXT{}{}", - self.hit_object.dis(_ctx), - self.sbt_record_index.dis(_ctx) + self.hit_object.dis(ctx), + self.sbt_record_index.dis(ctx) ) } } @@ -24060,13 +26475,18 @@ impl InstEncoding for OpHitObjectReorderExecuteShaderEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectReorderExecuteShaderEXT{}{}{}{}", - self.hit_object.dis(_ctx), - self.payload.dis(_ctx), - self.hint.dis(_ctx), - self.bits.dis(_ctx) + self.hit_object.dis(ctx), + self.payload.dis(ctx), + self.hint.dis(ctx), + self.bits.dis(ctx) ) } } @@ -24148,23 +26568,28 @@ impl InstEncoding for OpHitObjectTraceReorderExecuteEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectTraceReorderExecuteEXT{}{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.sbt_offset.dis(_ctx), - self.sbt_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.payload.dis(_ctx), - self.hint.dis(_ctx), - self.bits.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.sbt_offset.dis(ctx), + self.sbt_stride.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.payload.dis(ctx), + self.hint.dis(ctx), + self.bits.dis(ctx) ) } } @@ -24250,24 +26675,29 @@ impl InstEncoding for OpHitObjectTraceMotionReorderExecuteEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectTraceMotionReorderExecuteEXT{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.sbt_offset.dis(_ctx), - self.sbt_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.current_time.dis(_ctx), - self.payload.dis(_ctx), - self.hint.dis(_ctx), - self.bits.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.sbt_offset.dis(ctx), + self.sbt_stride.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.current_time.dis(ctx), + self.payload.dis(ctx), + self.hint.dis(ctx), + self.bits.dis(ctx) ) } } @@ -24296,7 +26726,12 @@ impl InstEncoding for OpTypeHitObjectEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeHitObjectEXT", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeHitObjectEXT", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -24327,11 +26762,16 @@ impl InstEncoding for OpReorderThreadWithHintEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpReorderThreadWithHintEXT{}{}", - self.hint.dis(_ctx), - self.bits.dis(_ctx) + self.hint.dis(ctx), + self.bits.dis(ctx) ) } } @@ -24369,12 +26809,17 @@ impl InstEncoding for OpReorderThreadWithHitObjectEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpReorderThreadWithHitObjectEXT{}{}{}", - self.hit_object.dis(_ctx), - self.hint.dis(_ctx), - self.bits.dis(_ctx) + self.hit_object.dis(ctx), + self.hint.dis(ctx), + self.bits.dis(ctx) ) } } @@ -24448,21 +26893,26 @@ impl InstEncoding for OpHitObjectTraceRayEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectTraceRayEXT{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.sbt_offset.dis(_ctx), - self.sbt_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.payload.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.sbt_offset.dis(ctx), + self.sbt_stride.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.payload.dis(ctx) ) } } @@ -24540,22 +26990,27 @@ impl InstEncoding for OpHitObjectTraceRayMotionEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectTraceRayMotionEXT{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.hit_object.dis(_ctx), - self.acceleration_structure.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.sbt_offset.dis(_ctx), - self.sbt_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.current_time.dis(_ctx), - self.payload.dis(_ctx) + self.hit_object.dis(ctx), + self.acceleration_structure.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.sbt_offset.dis(ctx), + self.sbt_stride.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.current_time.dis(ctx), + self.payload.dis(ctx) ) } } @@ -24584,7 +27039,12 @@ impl InstEncoding for OpHitObjectRecordEmptyEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpHitObjectRecordEmptyEXT{}", self.hit_object.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpHitObjectRecordEmptyEXT{}", self.hit_object.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -24617,11 +27077,16 @@ impl InstEncoding for OpHitObjectExecuteShaderEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectExecuteShaderEXT{}{}", - self.hit_object.dis(_ctx), - self.payload.dis(_ctx) + self.hit_object.dis(ctx), + self.payload.dis(ctx) ) } } @@ -24659,13 +27124,18 @@ impl InstEncoding for OpHitObjectGetCurrentTimeEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetCurrentTimeEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -24699,11 +27169,16 @@ impl InstEncoding for OpHitObjectGetAttributesEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpHitObjectGetAttributesEXT{}{}", - self.hit_object.dis(_ctx), - self.hit_object_attribute.dis(_ctx) + self.hit_object.dis(ctx), + self.hit_object_attribute.dis(ctx) ) } } @@ -24741,13 +27216,18 @@ impl InstEncoding for OpHitObjectGetHitKindEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetHitKindEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -24785,13 +27265,18 @@ impl InstEncoding for OpHitObjectGetPrimitiveIndexEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetPrimitiveIndexEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -24829,13 +27314,18 @@ impl InstEncoding for OpHitObjectGetGeometryIndexEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetGeometryIndexEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -24873,13 +27363,18 @@ impl InstEncoding for OpHitObjectGetInstanceIdEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetInstanceIdEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -24917,13 +27412,18 @@ impl InstEncoding for OpHitObjectGetInstanceCustomIndexEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetInstanceCustomIndexEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -24961,13 +27461,18 @@ impl InstEncoding for OpHitObjectGetObjectRayOriginEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetObjectRayOriginEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25005,13 +27510,18 @@ impl InstEncoding for OpHitObjectGetObjectRayDirectionEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetObjectRayDirectionEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25049,13 +27559,18 @@ impl InstEncoding for OpHitObjectGetWorldRayDirectionEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetWorldRayDirectionEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25093,13 +27608,18 @@ impl InstEncoding for OpHitObjectGetWorldRayOriginEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetWorldRayOriginEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25137,13 +27657,18 @@ impl InstEncoding for OpHitObjectGetObjectToWorldEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetObjectToWorldEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25181,13 +27706,18 @@ impl InstEncoding for OpHitObjectGetWorldToObjectEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetWorldToObjectEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25225,13 +27755,18 @@ impl InstEncoding for OpHitObjectGetRayTMaxEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetRayTMaxEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25273,14 +27808,19 @@ impl InstEncoding for OpReportIntersectionKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpReportIntersectionKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit.dis(_ctx), - self.hit_kind.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit.dis(ctx), + self.hit_kind.dis(ctx) ) } } @@ -25396,20 +27936,25 @@ impl InstEncoding for OpTraceNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpTraceNV{}{}{}{}{}{}{}{}{}{}{}", - self.accel.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.sbt_offset.dis(_ctx), - self.sbt_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.payload_id.dis(_ctx) + self.accel.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.sbt_offset.dis(ctx), + self.sbt_stride.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.payload_id.dis(ctx) ) } } @@ -25483,21 +28028,26 @@ impl InstEncoding for OpTraceMotionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpTraceMotionNV{}{}{}{}{}{}{}{}{}{}{}{}", - self.accel.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.sbt_offset.dis(_ctx), - self.sbt_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.time.dis(_ctx), - self.payload_id.dis(_ctx) + self.accel.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.sbt_offset.dis(ctx), + self.sbt_stride.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.time.dis(ctx), + self.payload_id.dis(ctx) ) } } @@ -25571,21 +28121,26 @@ impl InstEncoding for OpTraceRayMotionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpTraceRayMotionNV{}{}{}{}{}{}{}{}{}{}{}{}", - self.accel.dis(_ctx), - self.ray_flags.dis(_ctx), - self.cull_mask.dis(_ctx), - self.sbt_offset.dis(_ctx), - self.sbt_stride.dis(_ctx), - self.miss_index.dis(_ctx), - self.ray_origin.dis(_ctx), - self.ray_tmin.dis(_ctx), - self.ray_direction.dis(_ctx), - self.ray_tmax.dis(_ctx), - self.time.dis(_ctx), - self.payload.dis(_ctx) + self.accel.dis(ctx), + self.ray_flags.dis(ctx), + self.cull_mask.dis(ctx), + self.sbt_offset.dis(ctx), + self.sbt_stride.dis(ctx), + self.miss_index.dis(ctx), + self.ray_origin.dis(ctx), + self.ray_tmin.dis(ctx), + self.ray_direction.dis(ctx), + self.ray_tmax.dis(ctx), + self.time.dis(ctx), + self.payload.dis(ctx) ) } } @@ -25627,14 +28182,19 @@ impl InstEncoding for OpRayQueryGetIntersectionTriangleVertexPositionsKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionTriangleVertexPositionsKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -25663,10 +28223,15 @@ impl InstEncoding for OpTypeAccelerationStructureKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeAccelerationStructureKHR", - self.id_result.dis(_ctx) + self.id_result.dis(ctx) ) } } @@ -25700,11 +28265,16 @@ impl InstEncoding for OpExecuteCallableNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpExecuteCallableNV{}{}", - self.sbt_index.dis(_ctx), - self.callable_data_id.dis(_ctx) + self.sbt_index.dis(ctx), + self.callable_data_id.dis(ctx) ) } } @@ -25746,14 +28316,19 @@ impl InstEncoding for OpRayQueryGetIntersectionClusterIdNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionClusterIdNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -25791,13 +28366,18 @@ impl InstEncoding for OpHitObjectGetClusterIdNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetClusterIdNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25835,13 +28415,18 @@ impl InstEncoding for OpHitObjectGetRayTMinEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetRayTMinEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25879,13 +28464,18 @@ impl InstEncoding for OpHitObjectGetShaderBindingTableRecordIndexEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetShaderBindingTableRecordIndexEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25923,13 +28513,18 @@ impl InstEncoding for OpHitObjectGetShaderRecordBufferHandleEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetShaderRecordBufferHandleEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -25967,13 +28562,18 @@ impl InstEncoding for OpHitObjectIsEmptyEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectIsEmptyEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -26011,13 +28611,18 @@ impl InstEncoding for OpHitObjectIsHitEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectIsHitEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -26055,13 +28660,18 @@ impl InstEncoding for OpHitObjectIsMissEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectIsMissEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -26107,14 +28717,19 @@ impl InstEncoding for OpTypeCooperativeMatrixNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeCooperativeMatrixNV{}{}{}{}", - self.id_result.dis(_ctx), - self.component_type.dis(_ctx), - self.execution.dis(_ctx), - self.rows.dis(_ctx), - self.columns.dis(_ctx) + self.id_result.dis(ctx), + self.component_type.dis(ctx), + self.execution.dis(ctx), + self.rows.dis(ctx), + self.columns.dis(ctx) ) } } @@ -26164,16 +28779,21 @@ impl InstEncoding for OpCooperativeMatrixLoadNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixLoadNV{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.stride.dis(_ctx), - self.column_major.dis(_ctx), - self.memory_access.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.stride.dis(ctx), + self.column_major.dis(ctx), + self.memory_access.dis(ctx) ) } } @@ -26219,14 +28839,19 @@ impl InstEncoding for OpCooperativeMatrixStoreNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCooperativeMatrixStoreNV{}{}{}{}{}", - self.pointer.dis(_ctx), - self.object.dis(_ctx), - self.stride.dis(_ctx), - self.column_major.dis(_ctx), - self.memory_access.dis(_ctx) + self.pointer.dis(ctx), + self.object.dis(ctx), + self.stride.dis(ctx), + self.column_major.dis(ctx), + self.memory_access.dis(ctx) ) } } @@ -26272,15 +28897,20 @@ impl InstEncoding for OpCooperativeMatrixMulAddNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixMulAddNV{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.b.dis(_ctx), - self.c.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.b.dis(ctx), + self.c.dis(ctx) ) } } @@ -26318,13 +28948,18 @@ impl InstEncoding for OpCooperativeMatrixLengthNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixLengthNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ty.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ty.dis(ctx) ) } } @@ -26416,15 +29051,20 @@ impl InstEncoding for OpCooperativeMatrixReduceNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixReduceNV{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.matrix.dis(_ctx), - self.reduce.dis(_ctx), - self.combine_func.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.matrix.dis(ctx), + self.reduce.dis(ctx), + self.combine_func.dis(ctx) ) } } @@ -26478,17 +29118,22 @@ impl InstEncoding for OpCooperativeMatrixLoadTensorNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixLoadTensorNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.object.dis(_ctx), - self.tensor_layout.dis(_ctx), - self.memory_operand.dis(_ctx), - self.tensor_addressing_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.object.dis(ctx), + self.tensor_layout.dis(ctx), + self.memory_operand.dis(ctx), + self.tensor_addressing_operands.dis(ctx) ) } } @@ -26534,14 +29179,19 @@ impl InstEncoding for OpCooperativeMatrixStoreTensorNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpCooperativeMatrixStoreTensorNV{}{}{}{}{}", - self.pointer.dis(_ctx), - self.object.dis(_ctx), - self.tensor_layout.dis(_ctx), - self.memory_operand.dis(_ctx), - self.tensor_addressing_operands.dis(_ctx) + self.pointer.dis(ctx), + self.object.dis(ctx), + self.tensor_layout.dis(ctx), + self.memory_operand.dis(ctx), + self.tensor_addressing_operands.dis(ctx) ) } } @@ -26587,15 +29237,20 @@ impl InstEncoding for OpCooperativeMatrixPerElementOpNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixPerElementOpNV{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.matrix.dis(_ctx), - self.func.dis(_ctx), - self.operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.matrix.dis(ctx), + self.func.dis(ctx), + self.operands.dis(ctx) ) } } @@ -26633,12 +29288,17 @@ impl InstEncoding for OpTypeTensorLayoutNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeTensorLayoutNV{}{}", - self.id_result.dis(_ctx), - self.dim.dis(_ctx), - self.clamp_mode.dis(_ctx) + self.id_result.dis(ctx), + self.dim.dis(ctx), + self.clamp_mode.dis(ctx) ) } } @@ -26680,13 +29340,18 @@ impl InstEncoding for OpTypeTensorViewNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeTensorViewNV{}{}{}", - self.id_result.dis(_ctx), - self.dim.dis(_ctx), - self.has_dimensions.dis(_ctx), - self.p.dis(_ctx) + self.id_result.dis(ctx), + self.dim.dis(ctx), + self.has_dimensions.dis(ctx), + self.p.dis(ctx) ) } } @@ -26720,12 +29385,17 @@ impl InstEncoding for OpCreateTensorLayoutNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCreateTensorLayoutNV{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -26767,14 +29437,19 @@ impl InstEncoding for OpTensorLayoutSetDimensionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorLayoutSetDimensionNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor_layout.dis(_ctx), - self.dim.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor_layout.dis(ctx), + self.dim.dis(ctx) ) } } @@ -26816,14 +29491,19 @@ impl InstEncoding for OpTensorLayoutSetStrideNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorLayoutSetStrideNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor_layout.dis(_ctx), - self.stride.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor_layout.dis(ctx), + self.stride.dis(ctx) ) } } @@ -26865,14 +29545,19 @@ impl InstEncoding for OpTensorLayoutSliceNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorLayoutSliceNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor_layout.dis(_ctx), - self.operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor_layout.dis(ctx), + self.operands.dis(ctx) ) } } @@ -26914,14 +29599,19 @@ impl InstEncoding for OpTensorLayoutSetClampValueNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorLayoutSetClampValueNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor_layout.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor_layout.dis(ctx), + self.value.dis(ctx) ) } } @@ -26955,12 +29645,17 @@ impl InstEncoding for OpCreateTensorViewNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCreateTensorViewNV{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -27002,14 +29697,19 @@ impl InstEncoding for OpTensorViewSetDimensionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorViewSetDimensionNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor_view.dis(_ctx), - self.dim.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor_view.dis(ctx), + self.dim.dis(ctx) ) } } @@ -27051,14 +29751,19 @@ impl InstEncoding for OpTensorViewSetStrideNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorViewSetStrideNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor_view.dis(_ctx), - self.stride.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor_view.dis(ctx), + self.stride.dis(ctx) ) } } @@ -27115,12 +29820,17 @@ impl InstEncoding for OpIsHelperInvocationEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIsHelperInvocationEXT{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -27174,17 +29884,22 @@ impl InstEncoding for OpTensorViewSetClipNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorViewSetClipNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor_view.dis(_ctx), - self.clip_row_offset.dis(_ctx), - self.clip_row_span.dis(_ctx), - self.clip_col_offset.dis(_ctx), - self.clip_col_span.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor_view.dis(ctx), + self.clip_row_offset.dis(ctx), + self.clip_row_span.dis(ctx), + self.clip_col_offset.dis(ctx), + self.clip_col_span.dis(ctx) ) } } @@ -27226,14 +29941,19 @@ impl InstEncoding for OpTensorLayoutSetBlockSizeNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTensorLayoutSetBlockSizeNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.tensor_layout.dis(_ctx), - self.block_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.tensor_layout.dis(ctx), + self.block_size.dis(ctx) ) } } @@ -27271,13 +29991,18 @@ impl InstEncoding for OpCooperativeMatrixTransposeNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCooperativeMatrixTransposeNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.matrix.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.matrix.dis(ctx) ) } } @@ -27315,13 +30040,18 @@ impl InstEncoding for OpConvertUToImageNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertUToImageNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -27359,13 +30089,18 @@ impl InstEncoding for OpConvertUToSamplerNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertUToSamplerNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -27403,13 +30138,18 @@ impl InstEncoding for OpConvertImageToUNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertImageToUNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -27447,13 +30187,18 @@ impl InstEncoding for OpConvertSamplerToUNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertSamplerToUNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -27491,13 +30236,18 @@ impl InstEncoding for OpConvertUToSampledImageNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertUToSampledImageNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -27535,13 +30285,18 @@ impl InstEncoding for OpConvertSampledImageToUNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertSampledImageToUNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -27570,10 +30325,15 @@ impl InstEncoding for OpSamplerImageAddressingModeNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSamplerImageAddressingModeNV{}", - self.bit_width.dis(_ctx) + self.bit_width.dis(ctx) ) } } @@ -27627,17 +30387,22 @@ impl InstEncoding for OpRawAccessChainNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRawAccessChainNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.base.dis(_ctx), - self.byte_stride.dis(_ctx), - self.element_index.dis(_ctx), - self.byte_offset.dis(_ctx), - self.raw_access_chain_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.base.dis(ctx), + self.byte_stride.dis(ctx), + self.element_index.dis(ctx), + self.byte_offset.dis(ctx), + self.raw_access_chain_operands.dis(ctx) ) } } @@ -27679,14 +30444,19 @@ impl InstEncoding for OpRayQueryGetIntersectionSpherePositionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionSpherePositionNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -27728,14 +30498,19 @@ impl InstEncoding for OpRayQueryGetIntersectionSphereRadiusNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionSphereRadiusNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -27777,14 +30552,19 @@ impl InstEncoding for OpRayQueryGetIntersectionLSSPositionsNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionLSSPositionsNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -27826,14 +30606,19 @@ impl InstEncoding for OpRayQueryGetIntersectionLSSRadiiNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionLSSRadiiNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -27875,14 +30660,19 @@ impl InstEncoding for OpRayQueryGetIntersectionLSSHitValueNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionLSSHitValueNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -27920,13 +30710,18 @@ impl InstEncoding for OpHitObjectGetSpherePositionNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetSpherePositionNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -27964,13 +30759,18 @@ impl InstEncoding for OpHitObjectGetSphereRadiusNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetSphereRadiusNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -28008,13 +30808,18 @@ impl InstEncoding for OpHitObjectGetLSSPositionsNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetLSSPositionsNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -28052,13 +30857,18 @@ impl InstEncoding for OpHitObjectGetLSSRadiiNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectGetLSSRadiiNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -28096,13 +30906,18 @@ impl InstEncoding for OpHitObjectIsSphereHitNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectIsSphereHitNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -28140,13 +30955,18 @@ impl InstEncoding for OpHitObjectIsLSSHitNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpHitObjectIsLSSHitNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.hit_object.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.hit_object.dis(ctx) ) } } @@ -28188,14 +31008,19 @@ impl InstEncoding for OpRayQueryIsSphereHitNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryIsSphereHitNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -28237,14 +31062,19 @@ impl InstEncoding for OpRayQueryIsLSSHitNV { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryIsLSSHitNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -28286,14 +31116,19 @@ impl InstEncoding for OpSubgroupShuffleINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupShuffleINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.data.dis(_ctx), - self.invocation_id.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.data.dis(ctx), + self.invocation_id.dis(ctx) ) } } @@ -28339,15 +31174,20 @@ impl InstEncoding for OpSubgroupShuffleDownINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupShuffleDownINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.current.dis(_ctx), - self.next.dis(_ctx), - self.delta.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.current.dis(ctx), + self.next.dis(ctx), + self.delta.dis(ctx) ) } } @@ -28393,15 +31233,20 @@ impl InstEncoding for OpSubgroupShuffleUpINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupShuffleUpINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.previous.dis(_ctx), - self.current.dis(_ctx), - self.delta.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.previous.dis(ctx), + self.current.dis(ctx), + self.delta.dis(ctx) ) } } @@ -28443,14 +31288,19 @@ impl InstEncoding for OpSubgroupShuffleXorINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupShuffleXorINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.data.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.data.dis(ctx), + self.value.dis(ctx) ) } } @@ -28488,13 +31338,18 @@ impl InstEncoding for OpSubgroupBlockReadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupBlockReadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ptr.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ptr.dis(ctx) ) } } @@ -28526,11 +31381,16 @@ impl InstEncoding for OpSubgroupBlockWriteINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroupBlockWriteINTEL{}{}", - self.ptr.dis(_ctx), - self.data.dis(_ctx) + self.ptr.dis(ctx), + self.data.dis(ctx) ) } } @@ -28572,14 +31432,19 @@ impl InstEncoding for OpSubgroupImageBlockReadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupImageBlockReadINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx) ) } } @@ -28617,12 +31482,17 @@ impl InstEncoding for OpSubgroupImageBlockWriteINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroupImageBlockWriteINTEL{}{}{}", - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.data.dis(_ctx) + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.data.dis(ctx) ) } } @@ -28672,16 +31542,21 @@ impl InstEncoding for OpSubgroupImageMediaBlockReadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupImageMediaBlockReadINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.width.dis(_ctx), - self.height.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.width.dis(ctx), + self.height.dis(ctx) ) } } @@ -28727,14 +31602,19 @@ impl InstEncoding for OpSubgroupImageMediaBlockWriteINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroupImageMediaBlockWriteINTEL{}{}{}{}{}", - self.image.dis(_ctx), - self.coordinate.dis(_ctx), - self.width.dis(_ctx), - self.height.dis(_ctx), - self.data.dis(_ctx) + self.image.dis(ctx), + self.coordinate.dis(ctx), + self.width.dis(ctx), + self.height.dis(ctx), + self.data.dis(ctx) ) } } @@ -28772,13 +31652,18 @@ impl InstEncoding for OpUCountLeadingZerosINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUCountLeadingZerosINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -28816,13 +31701,18 @@ impl InstEncoding for OpUCountTrailingZerosINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUCountTrailingZerosINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -28864,14 +31754,19 @@ impl InstEncoding for OpAbsISubINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAbsISubINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -28913,14 +31808,19 @@ impl InstEncoding for OpAbsUSubINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAbsUSubINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -28962,14 +31862,19 @@ impl InstEncoding for OpIAddSatINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIAddSatINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29011,14 +31916,19 @@ impl InstEncoding for OpUAddSatINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUAddSatINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29060,14 +31970,19 @@ impl InstEncoding for OpIAverageINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIAverageINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29109,14 +32024,19 @@ impl InstEncoding for OpUAverageINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUAverageINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29158,14 +32078,19 @@ impl InstEncoding for OpIAverageRoundedINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIAverageRoundedINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29207,14 +32132,19 @@ impl InstEncoding for OpUAverageRoundedINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUAverageRoundedINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29256,14 +32186,19 @@ impl InstEncoding for OpISubSatINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpISubSatINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29305,14 +32240,19 @@ impl InstEncoding for OpUSubSatINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUSubSatINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29354,14 +32294,19 @@ impl InstEncoding for OpIMul32x16INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpIMul32x16INTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29403,14 +32348,19 @@ impl InstEncoding for OpUMul32x16INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUMul32x16INTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx), - self.operand_2.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx), + self.operand_2.dis(ctx) ) } } @@ -29448,13 +32398,18 @@ impl InstEncoding for OpConstantFunctionPointerINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConstantFunctionPointerINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.function.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.function.dis(ctx) ) } } @@ -29492,13 +32447,18 @@ impl InstEncoding for OpFunctionPointerCallINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFunctionPointerCallINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand_1.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand_1.dis(ctx) ) } } @@ -29532,11 +32492,16 @@ impl InstEncoding for OpAsmTargetINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpAsmTargetINTEL{}", - self.id_result.dis(_ctx), - self.asm_target.dis(_ctx) + self.id_result.dis(ctx), + self.asm_target.dis(ctx) ) } } @@ -29586,16 +32551,21 @@ impl InstEncoding for OpAsmINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAsmINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.asm_type.dis(_ctx), - self.target.dis(_ctx), - self.asm_instructions.dis(_ctx), - self.constraints.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.asm_type.dis(ctx), + self.target.dis(ctx), + self.asm_instructions.dis(ctx), + self.constraints.dis(ctx) ) } } @@ -29637,14 +32607,19 @@ impl InstEncoding for OpAsmCallINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAsmCallINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.asm.dis(_ctx), - self.argument.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.asm.dis(ctx), + self.argument.dis(ctx) ) } } @@ -29694,16 +32669,21 @@ impl InstEncoding for OpAtomicFMinEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicFMinEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -29753,16 +32733,21 @@ impl InstEncoding for OpAtomicFMaxEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicFMaxEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -29791,7 +32776,12 @@ impl InstEncoding for OpAssumeTrueKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpAssumeTrueKHR{}", self.condition.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpAssumeTrueKHR{}", self.condition.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -29832,14 +32822,19 @@ impl InstEncoding for OpExpectKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpExpectKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.value.dis(_ctx), - self.expected_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.value.dis(ctx), + self.expected_value.dis(ctx) ) } } @@ -29873,11 +32868,16 @@ impl InstEncoding for OpDecorateString { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpDecorateString{}{}", - self.target.dis(_ctx), - self.decoration.dis(_ctx) + self.target.dis(ctx), + self.decoration.dis(ctx) ) } } @@ -29915,12 +32915,17 @@ impl InstEncoding for OpMemberDecorateString { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpMemberDecorateString{}{}{}", - self.struct_type.dis(_ctx), - self.member.dis(_ctx), - self.decoration.dis(_ctx) + self.struct_type.dis(ctx), + self.member.dis(ctx), + self.decoration.dis(ctx) ) } } @@ -29962,14 +32967,19 @@ impl InstEncoding for OpVmeImageINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpVmeImageINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image_type.dis(_ctx), - self.sampler.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image_type.dis(ctx), + self.sampler.dis(ctx) ) } } @@ -30003,11 +33013,16 @@ impl InstEncoding for OpTypeVmeImageINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeVmeImageINTEL{}", - self.id_result.dis(_ctx), - self.image_type.dis(_ctx) + self.id_result.dis(ctx), + self.image_type.dis(ctx) ) } } @@ -30036,7 +33051,12 @@ impl InstEncoding for OpTypeAvcImePayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeAvcImePayloadINTEL", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeAvcImePayloadINTEL", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -30064,7 +33084,12 @@ impl InstEncoding for OpTypeAvcRefPayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeAvcRefPayloadINTEL", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeAvcRefPayloadINTEL", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -30092,7 +33117,12 @@ impl InstEncoding for OpTypeAvcSicPayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeAvcSicPayloadINTEL", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeAvcSicPayloadINTEL", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -30120,7 +33150,12 @@ impl InstEncoding for OpTypeAvcMcePayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeAvcMcePayloadINTEL", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeAvcMcePayloadINTEL", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -30148,7 +33183,12 @@ impl InstEncoding for OpTypeAvcMceResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeAvcMceResultINTEL", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeAvcMceResultINTEL", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -30176,7 +33216,12 @@ impl InstEncoding for OpTypeAvcImeResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeAvcImeResultINTEL", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeAvcImeResultINTEL", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -30204,10 +33249,15 @@ impl InstEncoding for OpTypeAvcImeResultSingleReferenceStreamoutINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeAvcImeResultSingleReferenceStreamoutINTEL", - self.id_result.dis(_ctx) + self.id_result.dis(ctx) ) } } @@ -30236,10 +33286,15 @@ impl InstEncoding for OpTypeAvcImeResultDualReferenceStreamoutINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeAvcImeResultDualReferenceStreamoutINTEL", - self.id_result.dis(_ctx) + self.id_result.dis(ctx) ) } } @@ -30268,10 +33323,15 @@ impl InstEncoding for OpTypeAvcImeSingleReferenceStreaminINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeAvcImeSingleReferenceStreaminINTEL", - self.id_result.dis(_ctx) + self.id_result.dis(ctx) ) } } @@ -30300,10 +33360,15 @@ impl InstEncoding for OpTypeAvcImeDualReferenceStreaminINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeAvcImeDualReferenceStreaminINTEL", - self.id_result.dis(_ctx) + self.id_result.dis(ctx) ) } } @@ -30332,7 +33397,12 @@ impl InstEncoding for OpTypeAvcRefResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeAvcRefResultINTEL", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeAvcRefResultINTEL", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -30360,7 +33430,12 @@ impl InstEncoding for OpTypeAvcSicResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeAvcSicResultINTEL", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeAvcSicResultINTEL", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -30402,14 +33477,19 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyIN }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.slice_type.dis(_ctx), - self.qp.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.slice_type.dis(ctx), + self.qp.dis(ctx) ) } } @@ -30451,14 +33531,19 @@ impl InstEncoding for OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.reference_base_penalty.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.reference_base_penalty.dis(ctx), + self.payload.dis(ctx) ) } } @@ -30500,14 +33585,19 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.slice_type.dis(_ctx), - self.qp.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.slice_type.dis(ctx), + self.qp.dis(ctx) ) } } @@ -30549,14 +33639,19 @@ impl InstEncoding for OpSubgroupAvcMceSetInterShapePenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceSetInterShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packed_shape_penalty.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packed_shape_penalty.dis(ctx), + self.payload.dis(ctx) ) } } @@ -30598,14 +33693,19 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.slice_type.dis(_ctx), - self.qp.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.slice_type.dis(ctx), + self.qp.dis(ctx) ) } } @@ -30647,14 +33747,19 @@ impl InstEncoding for OpSubgroupAvcMceSetInterDirectionPenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceSetInterDirectionPenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.direction_cost.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.direction_cost.dis(ctx), + self.payload.dis(ctx) ) } } @@ -30696,14 +33801,19 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.slice_type.dis(_ctx), - self.qp.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.slice_type.dis(ctx), + self.qp.dis(ctx) ) } } @@ -30745,14 +33855,19 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.slice_type.dis(_ctx), - self.qp.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.slice_type.dis(ctx), + self.qp.dis(ctx) ) } } @@ -30786,12 +33901,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -30825,12 +33945,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -30864,12 +33989,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -30919,16 +34049,21 @@ impl InstEncoding for OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packed_cost_center_delta.dis(_ctx), - self.packed_cost_table.dis(_ctx), - self.cost_precision.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packed_cost_center_delta.dis(ctx), + self.packed_cost_table.dis(ctx), + self.cost_precision.dis(ctx), + self.payload.dis(ctx) ) } } @@ -30970,14 +34105,19 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.slice_type.dis(_ctx), - self.qp.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.slice_type.dis(ctx), + self.qp.dis(ctx) ) } } @@ -31011,12 +34151,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -31050,12 +34195,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -31093,13 +34243,18 @@ impl InstEncoding for OpSubgroupAvcMceSetAcOnlyHaarINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceSetAcOnlyHaarINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31141,14 +34296,19 @@ impl InstEncoding for OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.source_field_polarity.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.source_field_polarity.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31191,14 +34351,19 @@ impl InstEncoding for OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityI }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.reference_field_polarity.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.reference_field_polarity.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31245,15 +34410,20 @@ impl InstEncoding for OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesI }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.forward_reference_field_polarity.dis(_ctx), - self.backward_reference_field_polarity.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.forward_reference_field_polarity.dis(ctx), + self.backward_reference_field_polarity.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31291,13 +34461,18 @@ impl InstEncoding for OpSubgroupAvcMceConvertToImePayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceConvertToImePayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31335,13 +34510,18 @@ impl InstEncoding for OpSubgroupAvcMceConvertToImeResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceConvertToImeResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31379,13 +34559,18 @@ impl InstEncoding for OpSubgroupAvcMceConvertToRefPayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceConvertToRefPayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31423,13 +34608,18 @@ impl InstEncoding for OpSubgroupAvcMceConvertToRefResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceConvertToRefResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31467,13 +34657,18 @@ impl InstEncoding for OpSubgroupAvcMceConvertToSicPayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceConvertToSicPayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31511,13 +34706,18 @@ impl InstEncoding for OpSubgroupAvcMceConvertToSicResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceConvertToSicResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31555,13 +34755,18 @@ impl InstEncoding for OpSubgroupAvcMceGetMotionVectorsINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31599,13 +34804,18 @@ impl InstEncoding for OpSubgroupAvcMceGetInterDistortionsINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetInterDistortionsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31643,13 +34853,18 @@ impl InstEncoding for OpSubgroupAvcMceGetBestInterDistortionsINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetBestInterDistortionsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31687,13 +34902,18 @@ impl InstEncoding for OpSubgroupAvcMceGetInterMajorShapeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetInterMajorShapeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31731,13 +34951,18 @@ impl InstEncoding for OpSubgroupAvcMceGetInterMinorShapeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetInterMinorShapeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31775,13 +35000,18 @@ impl InstEncoding for OpSubgroupAvcMceGetInterDirectionsINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetInterDirectionsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31819,13 +35049,18 @@ impl InstEncoding for OpSubgroupAvcMceGetInterMotionVectorCountINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetInterMotionVectorCountINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31863,13 +35098,18 @@ impl InstEncoding for OpSubgroupAvcMceGetInterReferenceIdsINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetInterReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31919,15 +35159,20 @@ impl InstEncoding for OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolarities }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packed_reference_ids.dis(_ctx), - self.packed_reference_parameter_field_polarities.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packed_reference_ids.dis(ctx), + self.packed_reference_parameter_field_polarities.dis(ctx), + self.payload.dis(ctx) ) } } @@ -31973,15 +35218,20 @@ impl InstEncoding for OpSubgroupAvcImeInitializeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_coord.dis(_ctx), - self.partition_mask.dis(_ctx), - self.sad_adjustment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_coord.dis(ctx), + self.partition_mask.dis(ctx), + self.sad_adjustment.dis(ctx) ) } } @@ -32027,15 +35277,20 @@ impl InstEncoding for OpSubgroupAvcImeSetSingleReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeSetSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ref_offset.dis(_ctx), - self.search_window_config.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ref_offset.dis(ctx), + self.search_window_config.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32085,16 +35340,21 @@ impl InstEncoding for OpSubgroupAvcImeSetDualReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeSetDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.fwd_ref_offset.dis(_ctx), - self.bwd_ref_offset.dis(_ctx), - self.search_window_config.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.fwd_ref_offset.dis(ctx), + self.bwd_ref_offset.dis(ctx), + self.search_window_config.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32136,14 +35396,19 @@ impl InstEncoding for OpSubgroupAvcImeRefWindowSizeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeRefWindowSizeINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.search_window_config.dis(_ctx), - self.dual_ref.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.search_window_config.dis(ctx), + self.dual_ref.dis(ctx) ) } } @@ -32193,16 +35458,21 @@ impl InstEncoding for OpSubgroupAvcImeAdjustRefOffsetINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeAdjustRefOffsetINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ref_offset.dis(_ctx), - self.src_coord.dis(_ctx), - self.ref_window_size.dis(_ctx), - self.image_size.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ref_offset.dis(ctx), + self.src_coord.dis(ctx), + self.ref_window_size.dis(ctx), + self.image_size.dis(ctx) ) } } @@ -32240,13 +35510,18 @@ impl InstEncoding for OpSubgroupAvcImeConvertToMcePayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32288,14 +35563,19 @@ impl InstEncoding for OpSubgroupAvcImeSetMaxMotionVectorCountINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeSetMaxMotionVectorCountINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.max_motion_vector_count.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.max_motion_vector_count.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32333,13 +35613,18 @@ impl InstEncoding for OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32381,14 +35666,19 @@ impl InstEncoding for OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.threshold.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.threshold.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32430,14 +35720,19 @@ impl InstEncoding for OpSubgroupAvcImeSetWeightedSadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeSetWeightedSadINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packed_sad_weights.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packed_sad_weights.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32483,15 +35778,20 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.ref_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.ref_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32541,16 +35841,21 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithDualReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.fwd_ref_image.dis(_ctx), - self.bwd_ref_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.fwd_ref_image.dis(ctx), + self.bwd_ref_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32600,16 +35905,21 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.ref_image.dis(_ctx), - self.payload.dis(_ctx), - self.streamin_components.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.ref_image.dis(ctx), + self.payload.dis(ctx), + self.streamin_components.dis(ctx) ) } } @@ -32663,17 +35973,22 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.fwd_ref_image.dis(_ctx), - self.bwd_ref_image.dis(_ctx), - self.payload.dis(_ctx), - self.streamin_components.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.fwd_ref_image.dis(ctx), + self.bwd_ref_image.dis(ctx), + self.payload.dis(ctx), + self.streamin_components.dis(ctx) ) } } @@ -32719,15 +36034,20 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.ref_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.ref_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32777,16 +36097,21 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.fwd_ref_image.dis(_ctx), - self.bwd_ref_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.fwd_ref_image.dis(ctx), + self.bwd_ref_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32836,16 +36161,21 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTE }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.ref_image.dis(_ctx), - self.payload.dis(_ctx), - self.streamin_components.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.ref_image.dis(ctx), + self.payload.dis(ctx), + self.streamin_components.dis(ctx) ) } } @@ -32899,17 +36229,22 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.fwd_ref_image.dis(_ctx), - self.bwd_ref_image.dis(_ctx), - self.payload.dis(_ctx), - self.streamin_components.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.fwd_ref_image.dis(ctx), + self.bwd_ref_image.dis(ctx), + self.payload.dis(ctx), + self.streamin_components.dis(ctx) ) } } @@ -32947,13 +36282,18 @@ impl InstEncoding for OpSubgroupAvcImeConvertToMceResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -32991,13 +36331,18 @@ impl InstEncoding for OpSubgroupAvcImeGetSingleReferenceStreaminINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetSingleReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33035,13 +36380,18 @@ impl InstEncoding for OpSubgroupAvcImeGetDualReferenceStreaminINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetDualReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33079,13 +36429,18 @@ impl InstEncoding for OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33123,13 +36478,18 @@ impl InstEncoding for OpSubgroupAvcImeStripDualReferenceStreamoutINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeStripDualReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33172,14 +36532,19 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotio }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx), - self.major_shape.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx), + self.major_shape.dis(ctx) ) } } @@ -33222,14 +36587,19 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDisto }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx), - self.major_shape.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx), + self.major_shape.dis(ctx) ) } } @@ -33272,14 +36642,19 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeRefer }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx), - self.major_shape.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx), + self.major_shape.dis(ctx) ) } } @@ -33326,15 +36701,20 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionV }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx), - self.major_shape.dis(_ctx), - self.direction.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx), + self.major_shape.dis(ctx), + self.direction.dis(ctx) ) } } @@ -33381,15 +36761,20 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistort }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx), - self.major_shape.dis(_ctx), - self.direction.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx), + self.major_shape.dis(ctx), + self.direction.dis(ctx) ) } } @@ -33436,15 +36821,20 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferen }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx), - self.major_shape.dis(_ctx), - self.direction.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx), + self.major_shape.dis(ctx), + self.direction.dis(ctx) ) } } @@ -33486,14 +36876,19 @@ impl InstEncoding for OpSubgroupAvcImeGetBorderReachedINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetBorderReachedINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.image_select.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.image_select.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33531,13 +36926,18 @@ impl InstEncoding for OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33575,13 +36975,18 @@ impl InstEncoding for OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINT }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33619,13 +37024,18 @@ impl InstEncoding for OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTE }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33663,13 +37073,18 @@ impl InstEncoding for OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33731,19 +37146,24 @@ impl InstEncoding for OpSubgroupAvcFmeInitializeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcFmeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_coord.dis(_ctx), - self.motion_vectors.dis(_ctx), - self.major_shapes.dis(_ctx), - self.minor_shapes.dis(_ctx), - self.direction.dis(_ctx), - self.pixel_resolution.dis(_ctx), - self.sad_adjustment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_coord.dis(ctx), + self.motion_vectors.dis(ctx), + self.major_shapes.dis(ctx), + self.minor_shapes.dis(ctx), + self.direction.dis(ctx), + self.pixel_resolution.dis(ctx), + self.sad_adjustment.dis(ctx) ) } } @@ -33809,20 +37229,25 @@ impl InstEncoding for OpSubgroupAvcBmeInitializeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcBmeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_coord.dis(_ctx), - self.motion_vectors.dis(_ctx), - self.major_shapes.dis(_ctx), - self.minor_shapes.dis(_ctx), - self.direction.dis(_ctx), - self.pixel_resolution.dis(_ctx), - self.bidirectional_weight.dis(_ctx), - self.sad_adjustment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_coord.dis(ctx), + self.motion_vectors.dis(ctx), + self.major_shapes.dis(ctx), + self.minor_shapes.dis(ctx), + self.direction.dis(ctx), + self.pixel_resolution.dis(ctx), + self.bidirectional_weight.dis(ctx), + self.sad_adjustment.dis(ctx) ) } } @@ -33860,13 +37285,18 @@ impl InstEncoding for OpSubgroupAvcRefConvertToMcePayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcRefConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33904,13 +37334,18 @@ impl InstEncoding for OpSubgroupAvcRefSetBidirectionalMixDisableINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcRefSetBidirectionalMixDisableINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -33948,13 +37383,18 @@ impl InstEncoding for OpSubgroupAvcRefSetBilinearFilterEnableINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcRefSetBilinearFilterEnableINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34000,15 +37440,20 @@ impl InstEncoding for OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.ref_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.ref_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34058,16 +37503,21 @@ impl InstEncoding for OpSubgroupAvcRefEvaluateWithDualReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcRefEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.fwd_ref_image.dis(_ctx), - self.bwd_ref_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.fwd_ref_image.dis(ctx), + self.bwd_ref_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34113,15 +37563,20 @@ impl InstEncoding for OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.packed_reference_ids.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.packed_reference_ids.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34171,16 +37626,21 @@ impl InstEncoding for OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.packed_reference_ids.dis(_ctx), - self.packed_reference_field_polarities.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.packed_reference_ids.dis(ctx), + self.packed_reference_field_polarities.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34218,13 +37678,18 @@ impl InstEncoding for OpSubgroupAvcRefConvertToMceResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcRefConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34262,13 +37727,18 @@ impl InstEncoding for OpSubgroupAvcSicInitializeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicInitializeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_coord.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_coord.dis(ctx) ) } } @@ -34326,18 +37796,23 @@ impl InstEncoding for OpSubgroupAvcSicConfigureSkcINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicConfigureSkcINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.skip_block_partition_type.dis(_ctx), - self.skip_motion_vector_mask.dis(_ctx), - self.motion_vectors.dis(_ctx), - self.bidirectional_weight.dis(_ctx), - self.sad_adjustment.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.skip_block_partition_type.dis(ctx), + self.skip_motion_vector_mask.dis(ctx), + self.motion_vectors.dis(ctx), + self.bidirectional_weight.dis(ctx), + self.sad_adjustment.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34403,20 +37878,25 @@ impl InstEncoding for OpSubgroupAvcSicConfigureIpeLumaINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicConfigureIpeLumaINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.luma_intra_partition_mask.dis(_ctx), - self.intra_neighbour_availabilty.dis(_ctx), - self.left_edge_luma_pixels.dis(_ctx), - self.upper_left_corner_luma_pixel.dis(_ctx), - self.upper_edge_luma_pixels.dis(_ctx), - self.upper_right_edge_luma_pixels.dis(_ctx), - self.sad_adjustment.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.luma_intra_partition_mask.dis(ctx), + self.intra_neighbour_availabilty.dis(ctx), + self.left_edge_luma_pixels.dis(ctx), + self.upper_left_corner_luma_pixel.dis(ctx), + self.upper_edge_luma_pixels.dis(ctx), + self.upper_right_edge_luma_pixels.dis(ctx), + self.sad_adjustment.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34494,23 +37974,28 @@ impl InstEncoding for OpSubgroupAvcSicConfigureIpeLumaChromaINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicConfigureIpeLumaChromaINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.luma_intra_partition_mask.dis(_ctx), - self.intra_neighbour_availabilty.dis(_ctx), - self.left_edge_luma_pixels.dis(_ctx), - self.upper_left_corner_luma_pixel.dis(_ctx), - self.upper_edge_luma_pixels.dis(_ctx), - self.upper_right_edge_luma_pixels.dis(_ctx), - self.left_edge_chroma_pixels.dis(_ctx), - self.upper_left_corner_chroma_pixel.dis(_ctx), - self.upper_edge_chroma_pixels.dis(_ctx), - self.sad_adjustment.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.luma_intra_partition_mask.dis(ctx), + self.intra_neighbour_availabilty.dis(ctx), + self.left_edge_luma_pixels.dis(ctx), + self.upper_left_corner_luma_pixel.dis(ctx), + self.upper_edge_luma_pixels.dis(ctx), + self.upper_right_edge_luma_pixels.dis(ctx), + self.left_edge_chroma_pixels.dis(ctx), + self.upper_left_corner_chroma_pixel.dis(ctx), + self.upper_edge_chroma_pixels.dis(ctx), + self.sad_adjustment.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34552,14 +38037,19 @@ impl InstEncoding for OpSubgroupAvcSicGetMotionVectorMaskINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetMotionVectorMaskINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.skip_block_partition_type.dis(_ctx), - self.direction.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.skip_block_partition_type.dis(ctx), + self.direction.dis(ctx) ) } } @@ -34597,13 +38087,18 @@ impl InstEncoding for OpSubgroupAvcSicConvertToMcePayloadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34645,14 +38140,19 @@ impl InstEncoding for OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packed_shape_penalty.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packed_shape_penalty.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34702,16 +38202,21 @@ impl InstEncoding for OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.luma_mode_penalty.dis(_ctx), - self.luma_packed_neighbor_modes.dis(_ctx), - self.luma_packed_non_dc_penalty.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.luma_mode_penalty.dis(ctx), + self.luma_packed_neighbor_modes.dis(ctx), + self.luma_packed_non_dc_penalty.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34753,14 +38258,19 @@ impl InstEncoding for OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.chroma_mode_base_penalty.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.chroma_mode_base_penalty.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34798,13 +38308,18 @@ impl InstEncoding for OpSubgroupAvcSicSetBilinearFilterEnableINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicSetBilinearFilterEnableINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34846,14 +38361,19 @@ impl InstEncoding for OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packed_sad_coefficients.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packed_sad_coefficients.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34895,14 +38415,19 @@ impl InstEncoding for OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.block_based_skip_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.block_based_skip_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34944,14 +38469,19 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateIpeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicEvaluateIpeINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -34997,15 +38527,20 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.ref_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.ref_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35055,16 +38590,21 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateWithDualReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.fwd_ref_image.dis(_ctx), - self.bwd_ref_image.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.fwd_ref_image.dis(ctx), + self.bwd_ref_image.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35110,15 +38650,20 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.packed_reference_ids.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.packed_reference_ids.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35168,16 +38713,21 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.src_image.dis(_ctx), - self.packed_reference_ids.dis(_ctx), - self.packed_reference_field_polarities.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.src_image.dis(ctx), + self.packed_reference_ids.dis(ctx), + self.packed_reference_field_polarities.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35215,13 +38765,18 @@ impl InstEncoding for OpSubgroupAvcSicConvertToMceResultINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35259,13 +38814,18 @@ impl InstEncoding for OpSubgroupAvcSicGetIpeLumaShapeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetIpeLumaShapeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35303,13 +38863,18 @@ impl InstEncoding for OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35347,13 +38912,18 @@ impl InstEncoding for OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35391,13 +38961,18 @@ impl InstEncoding for OpSubgroupAvcSicGetPackedIpeLumaModesINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetPackedIpeLumaModesINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35435,13 +39010,18 @@ impl InstEncoding for OpSubgroupAvcSicGetIpeChromaModeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetIpeChromaModeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35479,13 +39059,18 @@ impl InstEncoding for OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35523,13 +39108,18 @@ impl InstEncoding for OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35567,13 +39157,18 @@ impl InstEncoding for OpSubgroupAvcSicGetInterRawSadsINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupAvcSicGetInterRawSadsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.payload.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.payload.dis(ctx) ) } } @@ -35611,13 +39206,18 @@ impl InstEncoding for OpVariableLengthArrayINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpVariableLengthArrayINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.length.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.length.dis(ctx) ) } } @@ -35651,12 +39251,17 @@ impl InstEncoding for OpSaveMemoryINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSaveMemoryINTEL{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx) ) } } @@ -35685,7 +39290,12 @@ impl InstEncoding for OpRestoreMemoryINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpRestoreMemoryINTEL{}", self.ptr.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpRestoreMemoryINTEL{}", self.ptr.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -35742,18 +39352,23 @@ impl InstEncoding for OpArbitraryFloatSinCosPiALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatSinCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.m_result.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.rounding_accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.m_result.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.rounding_accuracy.dis(ctx) ) } } @@ -35811,18 +39426,23 @@ impl InstEncoding for OpArbitraryFloatCastALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatCastALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -35880,18 +39500,23 @@ impl InstEncoding for OpArbitraryFloatCastFromIntALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatCastFromIntALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.mresult.dis(_ctx), - self.from_sign.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.mresult.dis(ctx), + self.from_sign.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -35949,18 +39574,23 @@ impl InstEncoding for OpArbitraryFloatCastToIntALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatCastToIntALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.to_sign.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.to_sign.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36026,20 +39656,25 @@ impl InstEncoding for OpArbitraryFloatAddALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatAddALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx), - self.m_result.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx), + self.m_result.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36105,20 +39740,25 @@ impl InstEncoding for OpArbitraryFloatSubALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatSubALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36184,20 +39824,25 @@ impl InstEncoding for OpArbitraryFloatMulALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatMulALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36263,20 +39908,25 @@ impl InstEncoding for OpArbitraryFloatDivALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatDivALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36326,16 +39976,21 @@ impl InstEncoding for OpArbitraryFloatGTALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatGTALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx) ) } } @@ -36385,16 +40040,21 @@ impl InstEncoding for OpArbitraryFloatGEALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatGEALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx) ) } } @@ -36444,16 +40104,21 @@ impl InstEncoding for OpArbitraryFloatLTALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatLTALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx) ) } } @@ -36503,16 +40168,21 @@ impl InstEncoding for OpArbitraryFloatLEALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatLEALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx) ) } } @@ -36562,16 +40232,21 @@ impl InstEncoding for OpArbitraryFloatEQALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatEQALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx) ) } } @@ -36629,18 +40304,23 @@ impl InstEncoding for OpArbitraryFloatRecipALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatRecipALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36698,18 +40378,23 @@ impl InstEncoding for OpArbitraryFloatRSqrtALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatRSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36767,18 +40452,23 @@ impl InstEncoding for OpArbitraryFloatCbrtALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatCbrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36844,20 +40534,25 @@ impl InstEncoding for OpArbitraryFloatHypotALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatHypotALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36915,18 +40610,23 @@ impl InstEncoding for OpArbitraryFloatSqrtALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -36984,18 +40684,23 @@ impl InstEncoding for OpArbitraryFloatLogINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatLogINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37053,18 +40758,23 @@ impl InstEncoding for OpArbitraryFloatLog2INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatLog2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37122,18 +40832,23 @@ impl InstEncoding for OpArbitraryFloatLog10INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatLog10INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37191,18 +40906,23 @@ impl InstEncoding for OpArbitraryFloatLog1pINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatLog1pINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37260,18 +40980,23 @@ impl InstEncoding for OpArbitraryFloatExpINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatExpINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37329,18 +41054,23 @@ impl InstEncoding for OpArbitraryFloatExp2INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatExp2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37398,18 +41128,23 @@ impl InstEncoding for OpArbitraryFloatExp10INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatExp10INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37467,18 +41202,23 @@ impl InstEncoding for OpArbitraryFloatExpm1INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatExpm1INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37536,18 +41276,23 @@ impl InstEncoding for OpArbitraryFloatSinINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatSinINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37605,18 +41350,23 @@ impl InstEncoding for OpArbitraryFloatCosINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatCosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37674,18 +41424,23 @@ impl InstEncoding for OpArbitraryFloatSinCosINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatSinCosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37743,18 +41498,23 @@ impl InstEncoding for OpArbitraryFloatSinPiINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatSinPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37812,18 +41572,23 @@ impl InstEncoding for OpArbitraryFloatCosPiINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatCosPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37881,18 +41646,23 @@ impl InstEncoding for OpArbitraryFloatASinINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatASinINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -37950,18 +41720,23 @@ impl InstEncoding for OpArbitraryFloatASinPiINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatASinPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -38019,18 +41794,23 @@ impl InstEncoding for OpArbitraryFloatACosINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatACosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.m_1.dis(_ctx), - self.mout.dis(_ctx), - self.enable_subnormals.dis(_ctx), - self.rounding_mode.dis(_ctx), - self.rounding_accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.m_1.dis(ctx), + self.mout.dis(ctx), + self.enable_subnormals.dis(ctx), + self.rounding_mode.dis(ctx), + self.rounding_accuracy.dis(ctx) ) } } @@ -38088,18 +41868,23 @@ impl InstEncoding for OpArbitraryFloatACosPiINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatACosPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -38157,18 +41942,23 @@ impl InstEncoding for OpArbitraryFloatATanINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatATanINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -38226,18 +42016,23 @@ impl InstEncoding for OpArbitraryFloatATanPiINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatATanPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -38303,20 +42098,25 @@ impl InstEncoding for OpArbitraryFloatATan2INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatATan2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -38382,20 +42182,25 @@ impl InstEncoding for OpArbitraryFloatPowINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatPowINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -38461,20 +42266,25 @@ impl InstEncoding for OpArbitraryFloatPowRINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatPowRINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.mb.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.mb.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -38540,20 +42350,25 @@ impl InstEncoding for OpArbitraryFloatPowNINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArbitraryFloatPowNINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.ma.dis(_ctx), - self.b.dis(_ctx), - self.sign_of_b.dis(_ctx), - self.mresult.dis(_ctx), - self.subnormal.dis(_ctx), - self.rounding.dis(_ctx), - self.accuracy.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.ma.dis(ctx), + self.b.dis(ctx), + self.sign_of_b.dis(ctx), + self.mresult.dis(ctx), + self.subnormal.dis(ctx), + self.rounding.dis(ctx), + self.accuracy.dis(ctx) ) } } @@ -38582,10 +42397,15 @@ impl InstEncoding for OpLoopControlINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpLoopControlINTEL{}", - self.loop_control_parameters.dis(_ctx) + self.loop_control_parameters.dis(ctx) ) } } @@ -38618,11 +42438,16 @@ impl InstEncoding for OpAliasDomainDeclINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpAliasDomainDeclINTEL{}", - self.id_result.dis(_ctx), - self.name.dis(_ctx) + self.id_result.dis(ctx), + self.name.dis(ctx) ) } } @@ -38660,12 +42485,17 @@ impl InstEncoding for OpAliasScopeDeclINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpAliasScopeDeclINTEL{}{}", - self.id_result.dis(_ctx), - self.alias_domain.dis(_ctx), - self.name.dis(_ctx) + self.id_result.dis(ctx), + self.alias_domain.dis(ctx), + self.name.dis(ctx) ) } } @@ -38699,11 +42529,16 @@ impl InstEncoding for OpAliasScopeListDeclINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpAliasScopeListDeclINTEL{}", - self.id_result.dis(_ctx), - self.id_ref.dis(_ctx) + self.id_result.dis(ctx), + self.id_ref.dis(ctx) ) } } @@ -38761,18 +42596,23 @@ impl InstEncoding for OpFixedSqrtALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -38830,18 +42670,23 @@ impl InstEncoding for OpFixedRecipALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedRecipALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -38899,18 +42744,23 @@ impl InstEncoding for OpFixedRsqrtALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedRsqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -38968,18 +42818,23 @@ impl InstEncoding for OpFixedSinALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedSinALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -39037,18 +42892,23 @@ impl InstEncoding for OpFixedCosALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedCosALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -39106,18 +42966,23 @@ impl InstEncoding for OpFixedSinCosALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedSinCosALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -39175,18 +43040,23 @@ impl InstEncoding for OpFixedSinPiALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedSinPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -39244,18 +43114,23 @@ impl InstEncoding for OpFixedCosPiALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -39313,18 +43188,23 @@ impl InstEncoding for OpFixedSinCosPiALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedSinCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -39382,18 +43262,23 @@ impl InstEncoding for OpFixedLogALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedLogALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -39451,18 +43336,23 @@ impl InstEncoding for OpFixedExpALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFixedExpALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx), - self.s.dis(_ctx), - self.i.dis(_ctx), - self.r_i.dis(_ctx), - self.q.dis(_ctx), - self.o.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx), + self.s.dis(ctx), + self.i.dis(ctx), + self.r_i.dis(ctx), + self.q.dis(ctx), + self.o.dis(ctx) ) } } @@ -39500,13 +43390,18 @@ impl InstEncoding for OpPtrCastToCrossWorkgroupALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpPtrCastToCrossWorkgroupALTERA{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx) ) } } @@ -39544,13 +43439,18 @@ impl InstEncoding for OpCrossWorkgroupCastToPtrALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCrossWorkgroupCastToPtrALTERA{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx) ) } } @@ -39592,14 +43492,19 @@ impl InstEncoding for OpReadPipeBlockingALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpReadPipeBlockingALTERA{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -39641,14 +43546,19 @@ impl InstEncoding for OpWritePipeBlockingALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpWritePipeBlockingALTERA{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.packet_size.dis(_ctx), - self.packet_alignment.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.packet_size.dis(ctx), + self.packet_alignment.dis(ctx) ) } } @@ -39686,13 +43596,18 @@ impl InstEncoding for OpFPGARegALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpFPGARegALTERA{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.input.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.input.dis(ctx) ) } } @@ -39730,13 +43645,18 @@ impl InstEncoding for OpRayQueryGetRayTMinKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetRayTMinKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx) ) } } @@ -39774,13 +43694,18 @@ impl InstEncoding for OpRayQueryGetRayFlagsKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetRayFlagsKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx) ) } } @@ -39822,14 +43747,19 @@ impl InstEncoding for OpRayQueryGetIntersectionTKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionTKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -39871,14 +43801,19 @@ impl InstEncoding for OpRayQueryGetIntersectionInstanceCustomIndexKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionInstanceCustomIndexKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -39920,14 +43855,19 @@ impl InstEncoding for OpRayQueryGetIntersectionInstanceIdKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionInstanceIdKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -39970,14 +43910,19 @@ impl InstEncoding for OpRayQueryGetIntersectionInstanceShaderBindingTableRecordO }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40019,14 +43964,19 @@ impl InstEncoding for OpRayQueryGetIntersectionGeometryIndexKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionGeometryIndexKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40068,14 +44018,19 @@ impl InstEncoding for OpRayQueryGetIntersectionPrimitiveIndexKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionPrimitiveIndexKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40117,14 +44072,19 @@ impl InstEncoding for OpRayQueryGetIntersectionBarycentricsKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionBarycentricsKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40166,14 +44126,19 @@ impl InstEncoding for OpRayQueryGetIntersectionFrontFaceKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionFrontFaceKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40211,13 +44176,18 @@ impl InstEncoding for OpRayQueryGetIntersectionCandidateAABBOpaqueKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionCandidateAABBOpaqueKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx) ) } } @@ -40259,14 +44229,19 @@ impl InstEncoding for OpRayQueryGetIntersectionObjectRayDirectionKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionObjectRayDirectionKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40308,14 +44283,19 @@ impl InstEncoding for OpRayQueryGetIntersectionObjectRayOriginKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionObjectRayOriginKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40353,13 +44333,18 @@ impl InstEncoding for OpRayQueryGetWorldRayDirectionKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetWorldRayDirectionKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx) ) } } @@ -40397,13 +44382,18 @@ impl InstEncoding for OpRayQueryGetWorldRayOriginKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetWorldRayOriginKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx) ) } } @@ -40445,14 +44435,19 @@ impl InstEncoding for OpRayQueryGetIntersectionObjectToWorldKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionObjectToWorldKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40494,14 +44489,19 @@ impl InstEncoding for OpRayQueryGetIntersectionWorldToObjectKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRayQueryGetIntersectionWorldToObjectKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ray_query.dis(_ctx), - self.intersection.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ray_query.dis(ctx), + self.intersection.dis(ctx) ) } } @@ -40551,16 +44551,21 @@ impl InstEncoding for OpAtomicFAddEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpAtomicFAddEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.pointer.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx), - self.value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.pointer.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx), + self.value.dis(ctx) ) } } @@ -40594,11 +44599,16 @@ impl InstEncoding for OpTypeBufferSurfaceINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; write!( f, "{} = OpTypeBufferSurfaceINTEL{}", - self.id_result.dis(_ctx), - self.access_qualifier.dis(_ctx) + self.id_result.dis(ctx), + self.access_qualifier.dis(ctx) ) } } @@ -40627,7 +44637,12 @@ impl InstEncoding for OpTypeStructContinuedINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpTypeStructContinuedINTEL{}", self.id_ref.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpTypeStructContinuedINTEL{}", self.id_ref.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -40655,10 +44670,15 @@ impl InstEncoding for OpConstantCompositeContinuedINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpConstantCompositeContinuedINTEL{}", - self.constituents.dis(_ctx) + self.constituents.dis(ctx) ) } } @@ -40687,10 +44707,15 @@ impl InstEncoding for OpSpecConstantCompositeContinuedINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSpecConstantCompositeContinuedINTEL{}", - self.constituents.dis(_ctx) + self.constituents.dis(ctx) ) } } @@ -40728,13 +44753,18 @@ impl InstEncoding for OpCompositeConstructContinuedINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpCompositeConstructContinuedINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.constituents.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.constituents.dis(ctx) ) } } @@ -40772,13 +44802,18 @@ impl InstEncoding for OpConvertFToBF16INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertFToBF16INTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.float_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.float_value.dis(ctx) ) } } @@ -40816,13 +44851,18 @@ impl InstEncoding for OpConvertBF16ToFINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertBF16ToFINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.b_float_16_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.b_float_16_value.dis(ctx) ) } } @@ -40860,12 +44900,17 @@ impl InstEncoding for OpControlBarrierArriveINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpControlBarrierArriveINTEL{}{}{}", - self.execution.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.execution.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -40903,12 +44948,17 @@ impl InstEncoding for OpControlBarrierWaitINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpControlBarrierWaitINTEL{}{}{}", - self.execution.dis(_ctx), - self.memory.dis(_ctx), - self.semantics.dis(_ctx) + self.execution.dis(ctx), + self.memory.dis(ctx), + self.semantics.dis(ctx) ) } } @@ -40946,13 +44996,18 @@ impl InstEncoding for OpArithmeticFenceEXT { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpArithmeticFenceEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.target.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.target.dis(ctx) ) } } @@ -41006,17 +45061,22 @@ impl InstEncoding for OpTaskSequenceCreateALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTaskSequenceCreateALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.function.dis(_ctx), - self.pipelined.dis(_ctx), - self.use_stall_enable_clusters.dis(_ctx), - self.get_capacity.dis(_ctx), - self.async_capacity.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.function.dis(ctx), + self.pipelined.dis(ctx), + self.use_stall_enable_clusters.dis(ctx), + self.get_capacity.dis(ctx), + self.async_capacity.dis(ctx) ) } } @@ -41050,11 +45110,16 @@ impl InstEncoding for OpTaskSequenceAsyncALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpTaskSequenceAsyncALTERA{}{}", - self.sequence.dis(_ctx), - self.arguments.dis(_ctx) + self.sequence.dis(ctx), + self.arguments.dis(ctx) ) } } @@ -41092,13 +45157,18 @@ impl InstEncoding for OpTaskSequenceGetALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpTaskSequenceGetALTERA{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.sequence.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.sequence.dis(ctx) ) } } @@ -41127,7 +45197,12 @@ impl InstEncoding for OpTaskSequenceReleaseALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpTaskSequenceReleaseALTERA{}", self.sequence.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "OpTaskSequenceReleaseALTERA{}", self.sequence.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -41155,7 +45230,12 @@ impl InstEncoding for OpTypeTaskSequenceALTERA { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "{} = OpTypeTaskSequenceALTERA", self.id_result.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "{} = OpTypeTaskSequenceALTERA", self.id_result.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -41192,12 +45272,17 @@ impl InstEncoding for OpSubgroupBlockPrefetchINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroupBlockPrefetchINTEL{}{}{}", - self.ptr.dis(_ctx), - self.num_bytes.dis(_ctx), - self.memory_access.dis(_ctx) + self.ptr.dis(ctx), + self.num_bytes.dis(ctx), + self.memory_access.dis(ctx) ) } } @@ -41263,19 +45348,24 @@ impl InstEncoding for OpSubgroup2DBlockLoadINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroup2DBlockLoadINTEL{}{}{}{}{}{}{}{}{}{}", - self.element_size.dis(_ctx), - self.block_width.dis(_ctx), - self.block_height.dis(_ctx), - self.block_count.dis(_ctx), - self.src_base_pointer.dis(_ctx), - self.memory_width.dis(_ctx), - self.memory_height.dis(_ctx), - self.memory_pitch.dis(_ctx), - self.coordinate.dis(_ctx), - self.dst_pointer.dis(_ctx) + self.element_size.dis(ctx), + self.block_width.dis(ctx), + self.block_height.dis(ctx), + self.block_count.dis(ctx), + self.src_base_pointer.dis(ctx), + self.memory_width.dis(ctx), + self.memory_height.dis(ctx), + self.memory_pitch.dis(ctx), + self.coordinate.dis(ctx), + self.dst_pointer.dis(ctx) ) } } @@ -41341,19 +45431,24 @@ impl InstEncoding for OpSubgroup2DBlockLoadTransformINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroup2DBlockLoadTransformINTEL{}{}{}{}{}{}{}{}{}{}", - self.element_size.dis(_ctx), - self.block_width.dis(_ctx), - self.block_height.dis(_ctx), - self.block_count.dis(_ctx), - self.src_base_pointer.dis(_ctx), - self.memory_width.dis(_ctx), - self.memory_height.dis(_ctx), - self.memory_pitch.dis(_ctx), - self.coordinate.dis(_ctx), - self.dst_pointer.dis(_ctx) + self.element_size.dis(ctx), + self.block_width.dis(ctx), + self.block_height.dis(ctx), + self.block_count.dis(ctx), + self.src_base_pointer.dis(ctx), + self.memory_width.dis(ctx), + self.memory_height.dis(ctx), + self.memory_pitch.dis(ctx), + self.coordinate.dis(ctx), + self.dst_pointer.dis(ctx) ) } } @@ -41419,19 +45514,24 @@ impl InstEncoding for OpSubgroup2DBlockLoadTransposeINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroup2DBlockLoadTransposeINTEL{}{}{}{}{}{}{}{}{}{}", - self.element_size.dis(_ctx), - self.block_width.dis(_ctx), - self.block_height.dis(_ctx), - self.block_count.dis(_ctx), - self.src_base_pointer.dis(_ctx), - self.memory_width.dis(_ctx), - self.memory_height.dis(_ctx), - self.memory_pitch.dis(_ctx), - self.coordinate.dis(_ctx), - self.dst_pointer.dis(_ctx) + self.element_size.dis(ctx), + self.block_width.dis(ctx), + self.block_height.dis(ctx), + self.block_count.dis(ctx), + self.src_base_pointer.dis(ctx), + self.memory_width.dis(ctx), + self.memory_height.dis(ctx), + self.memory_pitch.dis(ctx), + self.coordinate.dis(ctx), + self.dst_pointer.dis(ctx) ) } } @@ -41493,18 +45593,23 @@ impl InstEncoding for OpSubgroup2DBlockPrefetchINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroup2DBlockPrefetchINTEL{}{}{}{}{}{}{}{}{}", - self.element_size.dis(_ctx), - self.block_width.dis(_ctx), - self.block_height.dis(_ctx), - self.block_count.dis(_ctx), - self.src_base_pointer.dis(_ctx), - self.memory_width.dis(_ctx), - self.memory_height.dis(_ctx), - self.memory_pitch.dis(_ctx), - self.coordinate.dis(_ctx) + self.element_size.dis(ctx), + self.block_width.dis(ctx), + self.block_height.dis(ctx), + self.block_count.dis(ctx), + self.src_base_pointer.dis(ctx), + self.memory_width.dis(ctx), + self.memory_height.dis(ctx), + self.memory_pitch.dis(ctx), + self.coordinate.dis(ctx) ) } } @@ -41570,19 +45675,24 @@ impl InstEncoding for OpSubgroup2DBlockStoreINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpSubgroup2DBlockStoreINTEL{}{}{}{}{}{}{}{}{}{}", - self.element_size.dis(_ctx), - self.block_width.dis(_ctx), - self.block_height.dis(_ctx), - self.block_count.dis(_ctx), - self.src_pointer.dis(_ctx), - self.dst_base_pointer.dis(_ctx), - self.memory_width.dis(_ctx), - self.memory_height.dis(_ctx), - self.memory_pitch.dis(_ctx), - self.coordinate.dis(_ctx) + self.element_size.dis(ctx), + self.block_width.dis(ctx), + self.block_height.dis(ctx), + self.block_count.dis(ctx), + self.src_pointer.dis(ctx), + self.dst_base_pointer.dis(ctx), + self.memory_width.dis(ctx), + self.memory_height.dis(ctx), + self.memory_pitch.dis(ctx), + self.coordinate.dis(ctx) ) } } @@ -41636,17 +45746,22 @@ impl InstEncoding for OpSubgroupMatrixMultiplyAccumulateINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSubgroupMatrixMultiplyAccumulateINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.k_dim.dis(_ctx), - self.matrix_a.dis(_ctx), - self.matrix_b.dis(_ctx), - self.matrix_c.dis(_ctx), - self.matrix_multiply_accumulate_operands.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.k_dim.dis(ctx), + self.matrix_a.dis(ctx), + self.matrix_b.dis(ctx), + self.matrix_c.dis(ctx), + self.matrix_multiply_accumulate_operands.dis(ctx) ) } } @@ -41696,16 +45811,21 @@ impl InstEncoding for OpBitwiseFunctionINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpBitwiseFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.a.dis(_ctx), - self.b.dis(_ctx), - self.c.dis(_ctx), - self.lut_index.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.a.dis(ctx), + self.b.dis(ctx), + self.c.dis(ctx), + self.lut_index.dis(ctx) ) } } @@ -41747,14 +45867,19 @@ impl InstEncoding for OpUntypedVariableLengthArrayINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpUntypedVariableLengthArrayINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.element_type.dis(_ctx), - self.length.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.element_type.dis(ctx), + self.length.dis(ctx) ) } } @@ -41787,11 +45912,16 @@ impl InstEncoding for OpConditionalExtensionINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpConditionalExtensionINTEL{}{}", - self.condition.dis(_ctx), - self.name.dis(_ctx) + self.condition.dis(ctx), + self.name.dis(ctx) ) } } @@ -41837,14 +45967,19 @@ impl InstEncoding for OpConditionalEntryPointINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpConditionalEntryPointINTEL{}{}{}{}{}", - self.condition.dis(_ctx), - self.execution_model.dis(_ctx), - self.entry_point.dis(_ctx), - self.name.dis(_ctx), - self.interface.dis(_ctx) + self.condition.dis(ctx), + self.execution_model.dis(ctx), + self.entry_point.dis(ctx), + self.name.dis(ctx), + self.interface.dis(ctx) ) } } @@ -41878,11 +46013,16 @@ impl InstEncoding for OpConditionalCapabilityINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpConditionalCapabilityINTEL{}{}", - self.condition.dis(_ctx), - self.capability.dis(_ctx) + self.condition.dis(ctx), + self.capability.dis(ctx) ) } } @@ -41924,14 +46064,19 @@ impl InstEncoding for OpSpecConstantTargetINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstantTargetINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.target.dis(_ctx), - self.features.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.target.dis(ctx), + self.features.dis(ctx) ) } } @@ -41981,16 +46126,21 @@ impl InstEncoding for OpSpecConstantArchitectureINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstantArchitectureINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.category.dis(_ctx), - self.family.dis(_ctx), - self.opcode.dis(_ctx), - self.architecture.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.category.dis(ctx), + self.family.dis(ctx), + self.opcode.dis(ctx), + self.architecture.dis(ctx) ) } } @@ -42028,13 +46178,18 @@ impl InstEncoding for OpSpecConstantCapabilitiesINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpSpecConstantCapabilitiesINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.capabilities.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.capabilities.dis(ctx) ) } } @@ -42072,13 +46227,18 @@ impl InstEncoding for OpConditionalCopyObjectINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConditionalCopyObjectINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.id_ref.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.id_ref.dis(ctx) ) } } @@ -42124,15 +46284,20 @@ impl InstEncoding for OpGroupIMulKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupIMulKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -42178,15 +46343,20 @@ impl InstEncoding for OpGroupFMulKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupFMulKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -42232,15 +46402,20 @@ impl InstEncoding for OpGroupBitwiseAndKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupBitwiseAndKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -42286,15 +46461,20 @@ impl InstEncoding for OpGroupBitwiseOrKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupBitwiseOrKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -42340,15 +46520,20 @@ impl InstEncoding for OpGroupBitwiseXorKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupBitwiseXorKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -42394,15 +46579,20 @@ impl InstEncoding for OpGroupLogicalAndKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupLogicalAndKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -42448,15 +46638,20 @@ impl InstEncoding for OpGroupLogicalOrKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupLogicalOrKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -42502,15 +46697,20 @@ impl InstEncoding for OpGroupLogicalXorKHR { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpGroupLogicalXorKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.execution.dis(_ctx), - self.operation.dis(_ctx), - self.x.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.execution.dis(ctx), + self.operation.dis(ctx), + self.x.dis(ctx) ) } } @@ -42548,13 +46748,18 @@ impl InstEncoding for OpRoundFToTF32INTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpRoundFToTF32INTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.float_value.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.float_value.dis(ctx) ) } } @@ -42604,16 +46809,21 @@ impl InstEncoding for OpMaskedGatherINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpMaskedGatherINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.ptr_vector.dis(_ctx), - self.alignment.dis(_ctx), - self.mask.dis(_ctx), - self.fill_empty.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.ptr_vector.dis(ctx), + self.alignment.dis(ctx), + self.mask.dis(ctx), + self.fill_empty.dis(ctx) ) } } @@ -42655,13 +46865,18 @@ impl InstEncoding for OpMaskedScatterINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "OpMaskedScatterINTEL{}{}{}{}", - self.input_vector.dis(_ctx), - self.ptr_vector.dis(_ctx), - self.alignment.dis(_ctx), - self.mask.dis(_ctx) + self.input_vector.dis(ctx), + self.ptr_vector.dis(ctx), + self.alignment.dis(ctx), + self.mask.dis(ctx) ) } } @@ -42699,13 +46914,18 @@ impl InstEncoding for OpConvertHandleToImageINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertHandleToImageINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -42743,13 +46963,18 @@ impl InstEncoding for OpConvertHandleToSamplerINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertHandleToSamplerINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } @@ -42787,13 +47012,18 @@ impl InstEncoding for OpConvertHandleToSampledImageINTEL { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - let rspirv_space = _ctx.rspirv_space(); + let ctx = &OperandDisContext { + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + ctx: _ctx, + }; + let rspirv_space = ctx.rspirv_space(); write!( f, "{} = OpConvertHandleToSampledImageINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(_ctx), - self.id_result_type.dis(_ctx), - self.operand.dis(_ctx) + self.id_result.dis(ctx), + self.id_result_type.dis(ctx), + self.operand.dis(ctx) ) } } diff --git a/crates/rspirv2/src/core/operands.rs b/crates/rspirv2/src/core/operands.rs index 506eebaf..6aa1a471 100644 --- a/crates/rspirv2/src/core/operands.rs +++ b/crates/rspirv2/src/core/operands.rs @@ -27,7 +27,7 @@ unsafe impl OperandEncoding for ImageOperands { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -108,7 +108,7 @@ unsafe impl OperandEncoding for FPFastMathMode { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -163,7 +163,7 @@ unsafe impl OperandEncoding for SelectionControl { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -211,7 +211,7 @@ unsafe impl OperandEncoding for LoopControl { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -300,7 +300,7 @@ unsafe impl OperandEncoding for FunctionControl { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -352,7 +352,7 @@ unsafe impl OperandEncoding for MemorySemantics { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -429,7 +429,7 @@ unsafe impl OperandEncoding for MemoryAccess { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -484,7 +484,7 @@ unsafe impl OperandEncoding for KernelProfilingInfo { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -522,7 +522,7 @@ unsafe impl OperandEncoding for RayFlags { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -587,7 +587,7 @@ unsafe impl OperandEncoding for FragmentShadingRate { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -631,7 +631,7 @@ unsafe impl OperandEncoding for RawAccessChainOperands { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -704,7 +704,7 @@ unsafe impl OperandEncoding for SourceLanguage { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Unknown => write!(f, " Unknown"), Self::ESSL => write!(f, " ESSL"), @@ -786,7 +786,7 @@ unsafe impl OperandEncoding for ExecutionModel { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Vertex => write!(f, " Vertex"), Self::TessellationControl => write!(f, " TessellationControl"), @@ -846,7 +846,7 @@ unsafe impl OperandEncoding for AddressingModel { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Logical => write!(f, " Logical"), Self::Physical32 => write!(f, " Physical32"), @@ -893,7 +893,7 @@ unsafe impl OperandEncoding for MemoryModel { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Simple => write!(f, " Simple"), Self::GLSL450 => write!(f, " GLSL450"), @@ -1556,7 +1556,7 @@ unsafe impl OperandEncoding for ExecutionMode { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Invocations(p0) => write!(f, " Invocations{}", p0.dis(_ctx)), Self::SpacingEqual => write!(f, " SpacingEqual"), @@ -1874,7 +1874,7 @@ unsafe impl OperandEncoding for StorageClass { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::UniformConstant => write!(f, " UniformConstant"), Self::Input => write!(f, " Input"), @@ -1953,7 +1953,7 @@ unsafe impl OperandEncoding for Dim { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Dim1D => write!(f, " 1D"), Self::Dim2D => write!(f, " 2D"), @@ -2005,7 +2005,7 @@ unsafe impl OperandEncoding for SamplerAddressingMode { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::None => write!(f, " None"), Self::ClampToEdge => write!(f, " ClampToEdge"), @@ -2048,7 +2048,7 @@ unsafe impl OperandEncoding for SamplerFilterMode { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Nearest => write!(f, " Nearest"), Self::Linear => write!(f, " Linear"), @@ -2168,7 +2168,7 @@ unsafe impl OperandEncoding for ImageFormat { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Unknown => write!(f, " Unknown"), Self::Rgba32f => write!(f, " Rgba32f"), @@ -2284,7 +2284,7 @@ unsafe impl OperandEncoding for ImageChannelOrder { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::R => write!(f, " R"), Self::A => write!(f, " A"), @@ -2390,7 +2390,7 @@ unsafe impl OperandEncoding for ImageChannelDataType { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::SnormInt8 => write!(f, " SnormInt8"), Self::SnormInt16 => write!(f, " SnormInt16"), @@ -2458,7 +2458,7 @@ unsafe impl OperandEncoding for FPRoundingMode { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::RTE => write!(f, " RTE"), Self::RTZ => write!(f, " RTZ"), @@ -2500,7 +2500,7 @@ unsafe impl OperandEncoding for FPDenormMode { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Preserve => write!(f, " Preserve"), Self::FlushToZero => write!(f, " FlushToZero"), @@ -2552,7 +2552,7 @@ unsafe impl OperandEncoding for QuantizationModes { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::TRN => write!(f, " TRN"), Self::TRN_ZERO => write!(f, " TRN_ZERO"), @@ -2598,7 +2598,7 @@ unsafe impl OperandEncoding for FPOperationMode { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::IEEE => write!(f, " IEEE"), Self::ALT => write!(f, " ALT"), @@ -2642,7 +2642,7 @@ unsafe impl OperandEncoding for OverflowModes { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::WRAP => write!(f, " WRAP"), Self::SAT => write!(f, " SAT"), @@ -2686,7 +2686,7 @@ unsafe impl OperandEncoding for LinkageType { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Export => write!(f, " Export"), Self::Import => write!(f, " Import"), @@ -2729,7 +2729,7 @@ unsafe impl OperandEncoding for AccessQualifier { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::ReadOnly => write!(f, " ReadOnly"), Self::WriteOnly => write!(f, " WriteOnly"), @@ -2774,7 +2774,7 @@ unsafe impl OperandEncoding for HostAccessQualifier { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::NoneINTEL => write!(f, " NoneINTEL"), Self::ReadINTEL => write!(f, " ReadINTEL"), @@ -2830,7 +2830,7 @@ unsafe impl OperandEncoding for FunctionParameterAttribute { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Zext => write!(f, " Zext"), Self::Sext => write!(f, " Sext"), @@ -3866,7 +3866,7 @@ unsafe impl OperandEncoding for Decoration { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::RelaxedPrecision => write!(f, " RelaxedPrecision"), Self::SpecId(p0) => write!(f, " SpecId{}", p0.dis(_ctx)), @@ -4424,7 +4424,7 @@ unsafe impl OperandEncoding for BuiltIn { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Position => write!(f, " Position"), Self::PointSize => write!(f, " PointSize"), @@ -4617,7 +4617,7 @@ unsafe impl OperandEncoding for Scope { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::CrossDevice => write!(f, " CrossDevice"), Self::Device => write!(f, " Device"), @@ -4673,7 +4673,7 @@ unsafe impl OperandEncoding for GroupOperation { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Reduce => write!(f, " Reduce"), Self::InclusiveScan => write!(f, " InclusiveScan"), @@ -4724,7 +4724,7 @@ unsafe impl OperandEncoding for KernelEnqueueFlags { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::NoWait => write!(f, " NoWait"), Self::WaitKernel => write!(f, " WaitKernel"), @@ -5372,7 +5372,7 @@ unsafe impl OperandEncoding for Capability { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Matrix => write!(f, " Matrix"), Self::Shader => write!(f, " Shader"), @@ -5848,7 +5848,7 @@ unsafe impl OperandEncoding for RayQueryIntersection { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::RayQueryCandidateIntersectionKHR => { write!(f, " RayQueryCandidateIntersectionKHR") @@ -5894,7 +5894,7 @@ unsafe impl OperandEncoding for RayQueryCommittedIntersectionType { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::RayQueryCommittedIntersectionNoneKHR => { write!(f, " RayQueryCommittedIntersectionNoneKHR") @@ -5941,7 +5941,7 @@ unsafe impl OperandEncoding for RayQueryCandidateIntersectionType { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::RayQueryCandidateIntersectionTriangleKHR => { write!(f, " RayQueryCandidateIntersectionTriangleKHR") @@ -5984,7 +5984,7 @@ unsafe impl OperandEncoding for PackedVectorFormat { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::PackedVectorFormat4x8Bit => write!(f, " PackedVectorFormat4x8Bit"), } @@ -6014,7 +6014,7 @@ unsafe impl OperandEncoding for CooperativeMatrixOperands { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -6076,7 +6076,7 @@ unsafe impl OperandEncoding for CooperativeMatrixLayout { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::RowMajorKHR => write!(f, " RowMajorKHR"), Self::ColumnMajorKHR => write!(f, " ColumnMajorKHR"), @@ -6122,7 +6122,7 @@ unsafe impl OperandEncoding for CooperativeMatrixUse { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::MatrixAKHR => write!(f, " MatrixAKHR"), Self::MatrixBKHR => write!(f, " MatrixBKHR"), @@ -6151,7 +6151,7 @@ unsafe impl OperandEncoding for CooperativeMatrixReduce { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -6209,7 +6209,7 @@ unsafe impl OperandEncoding for TensorClampMode { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Undefined => write!(f, " Undefined"), Self::Constant => write!(f, " Constant"), @@ -6241,7 +6241,7 @@ unsafe impl OperandEncoding for TensorAddressingOperands { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -6290,7 +6290,7 @@ unsafe impl OperandEncoding for InitializationModeQualifier { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::InitOnDeviceReprogramALTERA => { write!(f, " InitOnDeviceReprogramALTERA") @@ -6338,7 +6338,7 @@ unsafe impl OperandEncoding for LoadCacheControl { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::UncachedINTEL => write!(f, " UncachedINTEL"), Self::CachedINTEL => write!(f, " CachedINTEL"), @@ -6385,7 +6385,7 @@ unsafe impl OperandEncoding for StoreCacheControl { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::UncachedINTEL => write!(f, " UncachedINTEL"), Self::WriteThroughINTEL => write!(f, " WriteThroughINTEL"), @@ -6425,7 +6425,7 @@ unsafe impl OperandEncoding for NamedMaximumNumberOfRegisters { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::AutoINTEL => write!(f, " AutoINTEL"), } @@ -6458,7 +6458,7 @@ unsafe impl OperandEncoding for MatrixMultiplyAccumulateOperands { >(stringify!(MatrixMultiplyAccumulateOperands), bits)) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { @@ -6545,7 +6545,7 @@ unsafe impl OperandEncoding for FPEncoding { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::BFloat16KHR => write!(f, " BFloat16KHR"), Self::Float8E4M3EXT => write!(f, " Float8E4M3EXT"), @@ -6590,7 +6590,7 @@ unsafe impl OperandEncoding for CooperativeVectorMatrixLayout { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::RowMajorNV => write!(f, " RowMajorNV"), Self::ColumnMajorNV => write!(f, " ColumnMajorNV"), @@ -6658,7 +6658,7 @@ unsafe impl OperandEncoding for ComponentType { }) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { match self { Self::Float16NV => write!(f, " Float16NV"), Self::Float32NV => write!(f, " Float32NV"), @@ -6700,7 +6700,7 @@ unsafe impl OperandEncoding for PairLiteralIntegerIdRef { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { write!( f, " {} {}", @@ -6731,7 +6731,7 @@ unsafe impl OperandEncoding for PairIdRefLiteralInteger { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { write!( f, " {} {}", @@ -6762,7 +6762,7 @@ unsafe impl OperandEncoding for PairIdRefIdRef { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { write!( f, " {} {}", @@ -6794,7 +6794,7 @@ unsafe impl OperandEncoding for TensorOperands { )) } #[inline] - fn dis_fmt(&self, f: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, _: &OperandDisContext<'_>) -> std::fmt::Result { if self.is_empty() { write!(f, " None") } else { diff --git a/crates/rspirv2/src/debug_printf/inst.rs b/crates/rspirv2/src/debug_printf/inst.rs index d96590dd..3952f859 100644 --- a/crates/rspirv2/src/debug_printf/inst.rs +++ b/crates/rspirv2/src/debug_printf/inst.rs @@ -28,11 +28,16 @@ impl InstEncoding for DebugPrintf { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "DebugPrintf{}{}", - self.format.dis(_ctx), - self.id_ref.dis(_ctx) + self.format.dis(ctx), + self.id_ref.dis(ctx) ) } } diff --git a/crates/rspirv2/src/glsl_std_450/inst.rs b/crates/rspirv2/src/glsl_std_450/inst.rs index a9b1439e..ecbe486d 100644 --- a/crates/rspirv2/src/glsl_std_450/inst.rs +++ b/crates/rspirv2/src/glsl_std_450/inst.rs @@ -24,7 +24,12 @@ impl InstEncoding for Round { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Round{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Round{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -52,7 +57,12 @@ impl InstEncoding for RoundEven { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "RoundEven{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "RoundEven{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -80,7 +90,12 @@ impl InstEncoding for Trunc { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Trunc{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Trunc{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -108,7 +123,12 @@ impl InstEncoding for FAbs { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "FAbs{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "FAbs{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -136,7 +156,12 @@ impl InstEncoding for SAbs { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "SAbs{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "SAbs{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -164,7 +189,12 @@ impl InstEncoding for FSign { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "FSign{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "FSign{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -192,7 +222,12 @@ impl InstEncoding for SSign { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "SSign{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "SSign{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -220,7 +255,12 @@ impl InstEncoding for Floor { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Floor{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Floor{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -248,7 +288,12 @@ impl InstEncoding for Ceil { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Ceil{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Ceil{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -276,7 +321,12 @@ impl InstEncoding for Fract { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Fract{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Fract{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -304,7 +354,12 @@ impl InstEncoding for Radians { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Radians{}", self.degrees.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Radians{}", self.degrees.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -332,7 +387,12 @@ impl InstEncoding for Degrees { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Degrees{}", self.radians.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Degrees{}", self.radians.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -360,7 +420,12 @@ impl InstEncoding for Sin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Sin{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Sin{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -388,7 +453,12 @@ impl InstEncoding for Cos { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Cos{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Cos{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -416,7 +486,12 @@ impl InstEncoding for Tan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Tan{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Tan{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -444,7 +519,12 @@ impl InstEncoding for Asin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Asin{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Asin{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -472,7 +552,12 @@ impl InstEncoding for Acos { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Acos{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Acos{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -500,7 +585,12 @@ impl InstEncoding for Atan { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Atan{}", self.y_over_x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Atan{}", self.y_over_x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -528,7 +618,12 @@ impl InstEncoding for Sinh { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Sinh{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Sinh{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -556,7 +651,12 @@ impl InstEncoding for Cosh { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Cosh{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Cosh{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -584,7 +684,12 @@ impl InstEncoding for Tanh { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Tanh{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Tanh{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -612,7 +717,12 @@ impl InstEncoding for Asinh { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Asinh{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Asinh{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -640,7 +750,12 @@ impl InstEncoding for Acosh { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Acosh{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Acosh{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -668,7 +783,12 @@ impl InstEncoding for Atanh { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Atanh{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Atanh{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -699,7 +819,12 @@ impl InstEncoding for Atan2 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Atan2{}{}", self.y.dis(_ctx), self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Atan2{}{}", self.y.dis(ctx), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -730,7 +855,12 @@ impl InstEncoding for Pow { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Pow{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Pow{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -758,7 +888,12 @@ impl InstEncoding for Exp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Exp{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Exp{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -786,7 +921,12 @@ impl InstEncoding for Log { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Log{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Log{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -814,7 +954,12 @@ impl InstEncoding for Exp2 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Exp2{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Exp2{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -842,7 +987,12 @@ impl InstEncoding for Log2 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Log2{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Log2{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -870,7 +1020,12 @@ impl InstEncoding for Sqrt { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Sqrt{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Sqrt{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -898,7 +1053,12 @@ impl InstEncoding for InverseSqrt { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "InverseSqrt{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "InverseSqrt{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -926,7 +1086,12 @@ impl InstEncoding for Determinant { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Determinant{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Determinant{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -954,7 +1119,12 @@ impl InstEncoding for MatrixInverse { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "MatrixInverse{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "MatrixInverse{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -985,7 +1155,12 @@ impl InstEncoding for Modf { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Modf{}{}", self.x.dis(_ctx), self.i.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Modf{}{}", self.x.dis(ctx), self.i.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1013,7 +1188,12 @@ impl InstEncoding for ModfStruct { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "ModfStruct{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "ModfStruct{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1044,7 +1224,12 @@ impl InstEncoding for FMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "FMin{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "FMin{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1075,7 +1260,12 @@ impl InstEncoding for UMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "UMin{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "UMin{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1106,7 +1296,12 @@ impl InstEncoding for SMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "SMin{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "SMin{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1137,7 +1332,12 @@ impl InstEncoding for FMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "FMax{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "FMax{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1168,7 +1368,12 @@ impl InstEncoding for UMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "UMax{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "UMax{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1199,7 +1404,12 @@ impl InstEncoding for SMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "SMax{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "SMax{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1236,12 +1446,17 @@ impl InstEncoding for FClamp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "FClamp{}{}{}", - self.x.dis(_ctx), - self.min_val.dis(_ctx), - self.max_val.dis(_ctx) + self.x.dis(ctx), + self.min_val.dis(ctx), + self.max_val.dis(ctx) ) } } @@ -1279,12 +1494,17 @@ impl InstEncoding for UClamp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "UClamp{}{}{}", - self.x.dis(_ctx), - self.min_val.dis(_ctx), - self.max_val.dis(_ctx) + self.x.dis(ctx), + self.min_val.dis(ctx), + self.max_val.dis(ctx) ) } } @@ -1322,12 +1542,17 @@ impl InstEncoding for SClamp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "SClamp{}{}{}", - self.x.dis(_ctx), - self.min_val.dis(_ctx), - self.max_val.dis(_ctx) + self.x.dis(ctx), + self.min_val.dis(ctx), + self.max_val.dis(ctx) ) } } @@ -1365,12 +1590,17 @@ impl InstEncoding for FMix { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "FMix{}{}{}", - self.x.dis(_ctx), - self.y.dis(_ctx), - self.a.dis(_ctx) + self.x.dis(ctx), + self.y.dis(ctx), + self.a.dis(ctx) ) } } @@ -1408,12 +1638,17 @@ impl InstEncoding for IMix { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "IMix{}{}{}", - self.x.dis(_ctx), - self.y.dis(_ctx), - self.a.dis(_ctx) + self.x.dis(ctx), + self.y.dis(ctx), + self.a.dis(ctx) ) } } @@ -1445,7 +1680,12 @@ impl InstEncoding for Step { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Step{}{}", self.edge.dis(_ctx), self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Step{}{}", self.edge.dis(ctx), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1482,12 +1722,17 @@ impl InstEncoding for SmoothStep { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "SmoothStep{}{}{}", - self.edge_0.dis(_ctx), - self.edge_1.dis(_ctx), - self.x.dis(_ctx) + self.edge_0.dis(ctx), + self.edge_1.dis(ctx), + self.x.dis(ctx) ) } } @@ -1525,12 +1770,17 @@ impl InstEncoding for Fma { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "Fma{}{}{}", - self.a.dis(_ctx), - self.b.dis(_ctx), - self.c.dis(_ctx) + self.a.dis(ctx), + self.b.dis(ctx), + self.c.dis(ctx) ) } } @@ -1562,7 +1812,12 @@ impl InstEncoding for Frexp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Frexp{}{}", self.x.dis(_ctx), self.exp.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Frexp{}{}", self.x.dis(ctx), self.exp.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1590,7 +1845,12 @@ impl InstEncoding for FrexpStruct { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "FrexpStruct{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "FrexpStruct{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1621,7 +1881,12 @@ impl InstEncoding for Ldexp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Ldexp{}{}", self.x.dis(_ctx), self.exp.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Ldexp{}{}", self.x.dis(ctx), self.exp.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1649,7 +1914,12 @@ impl InstEncoding for PackSnorm4x8 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "PackSnorm4x8{}", self.v.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "PackSnorm4x8{}", self.v.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1677,7 +1947,12 @@ impl InstEncoding for PackUnorm4x8 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "PackUnorm4x8{}", self.v.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "PackUnorm4x8{}", self.v.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1705,7 +1980,12 @@ impl InstEncoding for PackSnorm2x16 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "PackSnorm2x16{}", self.v.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "PackSnorm2x16{}", self.v.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1733,7 +2013,12 @@ impl InstEncoding for PackUnorm2x16 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "PackUnorm2x16{}", self.v.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "PackUnorm2x16{}", self.v.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1761,7 +2046,12 @@ impl InstEncoding for PackHalf2x16 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "PackHalf2x16{}", self.v.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "PackHalf2x16{}", self.v.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1789,7 +2079,12 @@ impl InstEncoding for PackDouble2x32 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "PackDouble2x32{}", self.v.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "PackDouble2x32{}", self.v.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1817,7 +2112,12 @@ impl InstEncoding for UnpackSnorm2x16 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "UnpackSnorm2x16{}", self.p.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "UnpackSnorm2x16{}", self.p.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1845,7 +2145,12 @@ impl InstEncoding for UnpackUnorm2x16 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "UnpackUnorm2x16{}", self.p.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "UnpackUnorm2x16{}", self.p.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1873,7 +2178,12 @@ impl InstEncoding for UnpackHalf2x16 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "UnpackHalf2x16{}", self.v.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "UnpackHalf2x16{}", self.v.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1901,7 +2211,12 @@ impl InstEncoding for UnpackSnorm4x8 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "UnpackSnorm4x8{}", self.p.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "UnpackSnorm4x8{}", self.p.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1929,7 +2244,12 @@ impl InstEncoding for UnpackUnorm4x8 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "UnpackUnorm4x8{}", self.p.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "UnpackUnorm4x8{}", self.p.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1957,7 +2277,12 @@ impl InstEncoding for UnpackDouble2x32 { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "UnpackDouble2x32{}", self.v.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "UnpackDouble2x32{}", self.v.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1985,7 +2310,12 @@ impl InstEncoding for Length { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Length{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Length{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2016,7 +2346,12 @@ impl InstEncoding for Distance { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Distance{}{}", self.p_0.dis(_ctx), self.p_1.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Distance{}{}", self.p_0.dis(ctx), self.p_1.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2047,7 +2382,12 @@ impl InstEncoding for Cross { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Cross{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Cross{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2075,7 +2415,12 @@ impl InstEncoding for Normalize { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Normalize{}", self.x.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Normalize{}", self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2112,12 +2457,17 @@ impl InstEncoding for FaceForward { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "FaceForward{}{}{}", - self.n.dis(_ctx), - self.i.dis(_ctx), - self.nref.dis(_ctx) + self.n.dis(ctx), + self.i.dis(ctx), + self.nref.dis(ctx) ) } } @@ -2149,7 +2499,12 @@ impl InstEncoding for Reflect { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "Reflect{}{}", self.i.dis(_ctx), self.n.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "Reflect{}{}", self.i.dis(ctx), self.n.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2186,12 +2541,17 @@ impl InstEncoding for Refract { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "Refract{}{}{}", - self.i.dis(_ctx), - self.n.dis(_ctx), - self.eta.dis(_ctx) + self.i.dis(ctx), + self.n.dis(ctx), + self.eta.dis(ctx) ) } } @@ -2220,7 +2580,12 @@ impl InstEncoding for FindILsb { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "FindILsb{}", self.value.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "FindILsb{}", self.value.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2248,7 +2613,12 @@ impl InstEncoding for FindSMsb { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "FindSMsb{}", self.value.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "FindSMsb{}", self.value.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2276,7 +2646,12 @@ impl InstEncoding for FindUMsb { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "FindUMsb{}", self.value.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "FindUMsb{}", self.value.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2304,7 +2679,12 @@ impl InstEncoding for InterpolateAtCentroid { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "InterpolateAtCentroid{}", self.interpolant.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "InterpolateAtCentroid{}", self.interpolant.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2337,11 +2717,16 @@ impl InstEncoding for InterpolateAtSample { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "InterpolateAtSample{}{}", - self.interpolant.dis(_ctx), - self.sample.dis(_ctx) + self.interpolant.dis(ctx), + self.sample.dis(ctx) ) } } @@ -2375,11 +2760,16 @@ impl InstEncoding for InterpolateAtOffset { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "InterpolateAtOffset{}{}", - self.interpolant.dis(_ctx), - self.offset.dis(_ctx) + self.interpolant.dis(ctx), + self.offset.dis(ctx) ) } } @@ -2411,7 +2801,12 @@ impl InstEncoding for NMin { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "NMin{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "NMin{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2442,7 +2837,12 @@ impl InstEncoding for NMax { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "NMax{}{}", self.x.dis(_ctx), self.y.dis(_ctx)) + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; + write!(f, "NMax{}{}", self.x.dis(ctx), self.y.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2479,12 +2879,17 @@ impl InstEncoding for NClamp { }) } fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx: _ctx, + }; write!( f, "NClamp{}{}{}", - self.x.dis(_ctx), - self.min_val.dis(_ctx), - self.max_val.dis(_ctx) + self.x.dis(ctx), + self.min_val.dis(ctx), + self.max_val.dis(ctx) ) } } diff --git a/crates/rspirv2/tests/dis.rs b/crates/rspirv2/tests/dis.rs index 24d7879c..376e40d5 100644 --- a/crates/rspirv2/tests/dis.rs +++ b/crates/rspirv2/tests/dis.rs @@ -3,7 +3,9 @@ use rspirv2::core::operands::{CooperativeMatrixReduce, Dim}; use rspirv2_types::binary::{IdResultAlloc, IdResultAllocator}; use rspirv2_types::dis::{DisContext, DisOptions}; use rspirv2_types::inst::InstEncoding; -use rspirv2_types::operand::{IdRef, IdResultType, LiteralInteger, OperandEncoding}; +use rspirv2_types::operand::{ + IdRef, IdResultType, LiteralInteger, OperandDisContext, OperandEncoding, +}; #[test] pub fn test_dis_optional_operand() -> anyhow::Result<()> { @@ -29,6 +31,7 @@ pub fn test_dis_optional_operand() -> anyhow::Result<()> { #[test] pub fn test_dis_renamed_symbols() -> anyhow::Result<()> { let ctx = DisContext::new(DisOptions::simple()); + let ctx = OperandDisContext::new(&ctx); assert_eq!(" 1D", Dim::Dim1D.dis(&ctx).to_string()); assert_eq!(" 2D", Dim::Dim2D.dis(&ctx).to_string()); assert_eq!(" 3D", Dim::Dim3D.dis(&ctx).to_string()); From a419ffa0515d5cb0faee05e23cab1054501f9159 Mon Sep 17 00:00:00 2001 From: firestar99 Date: Tue, 17 Mar 2026 11:41:52 +0100 Subject: [PATCH 02/12] dis ctx: infra for dis context, format constants as floats based on type context --- Cargo.lock | 7 +++ Cargo.toml | 1 + crates/rspirv2-types/Cargo.toml | 1 + crates/rspirv2-types/src/dis.rs | 54 +++++++++++++++++-- .../src/operand/literal_const.rs | 37 +++++++++++-- crates/rspirv2-types/src/slice.rs | 30 ++++++----- crates/rspirv2/src/dis.rs | 16 ++++++ crates/rspirv2/src/lib.rs | 1 + crates/rspirv2/tests/dis.rs | 4 +- crates/rspirv2/tests/dis_color.rs | 4 +- crates/tools-gen/src/dis.rs | 7 ++- spv/dis_reference.rspirv2 | 2 +- spv/dis_reference.rspirv_like | 2 +- spv/dis_reference.spirv_tools_like | 2 +- 14 files changed, 136 insertions(+), 32 deletions(-) create mode 100644 crates/rspirv2/src/dis.rs diff --git a/Cargo.lock b/Cargo.lock index 22e69751..b0eddfb7 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -295,9 +295,16 @@ dependencies = [ "anyhow", "bitflags", "bytemuck", + "rustc-hash", "smallvec", ] +[[package]] +name = "rustc-hash" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" + [[package]] name = "serde" version = "1.0.228" diff --git a/Cargo.toml b/Cargo.toml index 72310013..83c55547 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -42,6 +42,7 @@ clap = { version = "4.5.57", features = ["derive"] } anstream = "0.6.21" anstyle = "1.0.13" expect-test = "1.5.1" +rustc-hash = "2.1.1" [workspace.lints.rust] #missing_docs = "warn" diff --git a/crates/rspirv2-types/Cargo.toml b/crates/rspirv2-types/Cargo.toml index 020bbc5e..756975b0 100644 --- a/crates/rspirv2-types/Cargo.toml +++ b/crates/rspirv2-types/Cargo.toml @@ -15,6 +15,7 @@ bytemuck = { workspace = true, optional = true } bitflags.workspace = true smallvec.workspace = true anstyle.workspace = true +rustc-hash.workspace = true [dev-dependencies] anyhow.workspace = true diff --git a/crates/rspirv2-types/src/dis.rs b/crates/rspirv2-types/src/dis.rs index 38cef186..431985b8 100644 --- a/crates/rspirv2-types/src/dis.rs +++ b/crates/rspirv2-types/src/dis.rs @@ -1,7 +1,10 @@ //! Module for Disassembly -use crate::operand::LiteralStringEscape; +use crate::inst::InstEncoding; +use crate::operand::{ConstFmt, IdResult, LiteralStringEscape}; +use crate::slice::InstSlice; use anstyle::Style; +use rustc_hash::FxHashMap; use std::cell::Cell; use std::fmt::{Display, Formatter}; use std::ops::{Deref, DerefMut}; @@ -15,6 +18,11 @@ pub struct DisOptions { pub literal_string_escape: LiteralStringEscape, /// Add extra spaces around [`crate::operand::IdResultType`] to match `rspirv`'s behaviour pub rspirv_space: bool, + /// Format constants based on the `IdResultType` of the `OpConstant`, requires scanning the module for type + /// information to provide context. + /// + /// **REQUIRED** for correct disassembly + pub const_fmt: bool, } impl Default for DisOptions { @@ -24,6 +32,7 @@ impl Default for DisOptions { color: true, literal_string_escape: LiteralStringEscape::default(), rspirv_space: false, + const_fmt: true, } } } @@ -43,6 +52,7 @@ impl DisOptions { color: false, literal_string_escape: LiteralStringEscape::EscapeNewlines, rspirv_space: true, + const_fmt: true, } } @@ -52,6 +62,7 @@ impl DisOptions { color: true, literal_string_escape: LiteralStringEscape::MultiLine, rspirv_space: false, + const_fmt: true, } } @@ -72,17 +83,54 @@ impl DisOptions { } /// Context object for disassembly generation +/// +/// Next to [`DisOptions`], contains lookup tables to aid in disassembly generation. Initializing these tables is +/// **required** to generate correct disassembly that `spirv-as` can read, otherwise, we'll generate the best possible +/// disassembly we can. Since instructions are not available within the `rspirv2-types` crate, we can't actually +/// implement the context information retrieval here. Instead, it needs to be implemented for each instruction set with +/// the [`InstSetDisCtx`] trait, which may delegate to our default implementation in +/// `rspirv2::dis::create_dis_context_core`. #[derive(Clone, Debug, Default)] pub struct DisContext { + /// Options opt: DisOptions, + /// Maps an [`IdResult`] of a type declaration to a [`ConstFmt`] to tell `OpConstant` instructions how to format + /// the untyped constant value + pub id_to_const_fmt: FxHashMap, } impl DisContext { - pub fn new(opt: DisOptions) -> Self { - Self { opt } + /// Create a new [`DisContext`] by scanning the module for useful information, based on the options provided. + #[inline] + pub fn new(opt: DisOptions, slice: &InstSlice) -> Self { + let mut context = Self::no_context(opt); + context.add_context(slice); + context + } + + pub fn add_context(&mut self, slice: &InstSlice) { + ISA::add_context(slice, self); + } + + /// Creates a new [`DisContext`] without having scanned the module for the required extra information. + /// + /// **WARNING**: You need to [`Self::add_context`] the instructions you want to decode before disassembling, + /// as the disassembly generated may be invalid without the required context. For example, `OpConstant` needs to + /// query the type of constant their value is to format it correctly as a float or an int. + #[inline] + pub fn no_context(opt: DisOptions) -> Self { + Self { + opt, + ..Default::default() + } } } +/// An instruction set that provides additional context information for disassembly, see [`DisContext`]. +pub trait InstSetDisCtx: InstEncoding { + fn add_context(slice: &InstSlice, ctx: &mut DisContext); +} + impl Deref for DisContext { type Target = DisOptions; fn deref(&self) -> &Self::Target { diff --git a/crates/rspirv2-types/src/operand/literal_const.rs b/crates/rspirv2-types/src/operand/literal_const.rs index 271b3b5d..e056019c 100644 --- a/crates/rspirv2-types/src/operand/literal_const.rs +++ b/crates/rspirv2-types/src/operand/literal_const.rs @@ -180,10 +180,39 @@ unsafe impl OperandEncoding for LiteralConst { #[inline] fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { let color = ctx.color(AnsiColor::Red.on_default()); - match self.0.len() { - 1 => write!(f, " {color}{}{color:#}", self.as_u32().unwrap()), - 2 => write!(f, " {color}{}{color:#}", self.as_u64().unwrap()), - _ => write!(f, " {color}{:?}{color:#}", self.0.as_slice()), + let fmt = ctx + .id_result_type + .and_then(|ty| ctx.id_to_const_fmt.get(&ty.0)) + .copied() + .unwrap_or_default(); + match (self.0.len(), fmt) { + (1, ConstFmt::Decimal) => write!(f, " {color}{}{color:#}", self.as_u32().unwrap()), + (2, ConstFmt::Decimal) => write!(f, " {color}{}{color:#}", self.as_u64().unwrap()), + (1, ConstFmt::LowerHex) => write!(f, " {color}{:x}{color:#}", self.as_u32().unwrap()), + (2, ConstFmt::LowerHex) => write!(f, " {color}{:x}{color:#}", self.as_u64().unwrap()), + (1, ConstFmt::UpperHex) => write!(f, " {color}{:X}{color:#}", self.as_u32().unwrap()), + (2, ConstFmt::UpperHex) => write!(f, " {color}{:X}{color:#}", self.as_u64().unwrap()), + (1, ConstFmt::Float) => write!(f, " {color}{}{color:#}", self.as_f32().unwrap()), + (2, ConstFmt::Float) => write!(f, " {color}{}{color:#}", self.as_f64().unwrap()), + (_, _) => write!(f, " {color}{:?}{color:#}", self.0.as_slice()), } } } + +/// How the untyped constant value of a [`LiteralConst`] should be formatted +#[derive(Copy, Clone, Debug, Default, Eq, PartialEq, Hash)] +pub enum ConstFmt { + /// Format constant as a decimal integer + #[default] + Decimal, + /// **INCOMPLIANT** Format constant as a lower case hex value + /// + /// Hex values in disassembly are not supported by `spirv-as` + LowerHex, + /// **INCOMPLIANT** Format constant as an upper case hex value + /// + /// Hex values in disassembly are not supported by `spirv-as` + UpperHex, + /// Format constant as a float + Float, +} diff --git a/crates/rspirv2-types/src/slice.rs b/crates/rspirv2-types/src/slice.rs index def6186f..0ce6db0e 100644 --- a/crates/rspirv2-types/src/slice.rs +++ b/crates/rspirv2-types/src/slice.rs @@ -1,6 +1,6 @@ use crate::Word; use crate::binary::{DecodeError, InstOffset, InstReader}; -use crate::dis::{DisContext, DisOptions}; +use crate::dis::{DisContext, DisOptions, InstSetDisCtx}; use crate::inst::{InstEncoding, InstRef}; use std::fmt::{Debug, Display, Formatter}; use std::marker::PhantomData; @@ -92,12 +92,6 @@ impl InstSlice { pub const fn iter(&self) -> InstIter<'_, ISA> { InstIter::new(self) } - - /// disassemble - #[inline] - pub fn dis(&self, opt: DisOptions) -> Result, DecodeError> { - DisInstSlice::new(self, opt) - } } impl Deref for InstSlice { @@ -117,25 +111,33 @@ impl Debug for InstSlice { } } +impl InstSlice { + /// disassemble + #[inline] + pub fn dis(&self, opt: DisOptions) -> DisInstSlice<'_, ISA> { + DisInstSlice::new(self, opt) + } +} + /// A sequence of words that has been pre-processed and may be [`Display`]ed. /// /// The `ISA: `[`InstEncoding`] generic determines for which instruction set these Words are disassembled. -pub struct DisInstSlice<'a, ISA: InstEncoding> { +pub struct DisInstSlice<'a, ISA: InstSetDisCtx> { slice: &'a InstSlice, dis: DisContext, } -impl<'a, ISA: InstEncoding> DisInstSlice<'a, ISA> { +impl<'a, ISA: InstSetDisCtx> DisInstSlice<'a, ISA> { #[inline] - pub fn new(slice: &'a InstSlice, opt: DisOptions) -> Result { - Ok(Self { + pub fn new(slice: &'a InstSlice, opt: DisOptions) -> Self { + Self { slice, - dis: DisContext::new(opt), - }) + dis: DisContext::new(opt, slice), + } } } -impl<'a, ISA: InstEncoding> Display for DisInstSlice<'a, ISA> { +impl<'a, ISA: InstSetDisCtx> Display for DisInstSlice<'a, ISA> { fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { for inst in self.slice.iter() { writeln!(f, "{}", inst.dis(&self.dis))?; diff --git a/crates/rspirv2/src/dis.rs b/crates/rspirv2/src/dis.rs new file mode 100644 index 00000000..749e1a60 --- /dev/null +++ b/crates/rspirv2/src/dis.rs @@ -0,0 +1,16 @@ +use crate::core::inst_set::CoreInstSet; +use crate::core::inst_set::CoreInstSet::TypeFloat; +pub use rspirv2_types::dis::*; +use rspirv2_types::operand::ConstFmt; +use rspirv2_types::slice::InstSlice; + +impl InstSetDisCtx for CoreInstSet { + fn add_context(slice: &InstSlice, ctx: &mut DisContext) { + for inst in slice.iter() { + if let TypeFloat(inst) = inst { + ctx.id_to_const_fmt + .insert(inst.id_result.unwrap(), ConstFmt::Float); + } + } + } +} diff --git a/crates/rspirv2/src/lib.rs b/crates/rspirv2/src/lib.rs index 050f981b..8264d44f 100644 --- a/crates/rspirv2/src/lib.rs +++ b/crates/rspirv2/src/lib.rs @@ -2,6 +2,7 @@ pub mod core; pub mod debug_printf; +pub mod dis; pub mod glsl_std_450; pub use rspirv2_types::*; diff --git a/crates/rspirv2/tests/dis.rs b/crates/rspirv2/tests/dis.rs index 376e40d5..3dc9d80d 100644 --- a/crates/rspirv2/tests/dis.rs +++ b/crates/rspirv2/tests/dis.rs @@ -9,7 +9,7 @@ use rspirv2_types::operand::{ #[test] pub fn test_dis_optional_operand() -> anyhow::Result<()> { - let ctx = DisContext::new(DisOptions::simple()); + let ctx = DisContext::no_context(DisOptions::simple()); let mut alloc = IdResultAllocator::default(); let float = OpTypeFloat { id_result: Some(alloc.alloc_id()?), @@ -30,7 +30,7 @@ pub fn test_dis_optional_operand() -> anyhow::Result<()> { /// Symbols that have been renamed in `Enumerant::variant_ident` to be valid rust idents #[test] pub fn test_dis_renamed_symbols() -> anyhow::Result<()> { - let ctx = DisContext::new(DisOptions::simple()); + let ctx = DisContext::no_context(DisOptions::simple()); let ctx = OperandDisContext::new(&ctx); assert_eq!(" 1D", Dim::Dim1D.dis(&ctx).to_string()); assert_eq!(" 2D", Dim::Dim2D.dis(&ctx).to_string()); diff --git a/crates/rspirv2/tests/dis_color.rs b/crates/rspirv2/tests/dis_color.rs index 4a38db84..c2b5f2f3 100644 --- a/crates/rspirv2/tests/dis_color.rs +++ b/crates/rspirv2/tests/dis_color.rs @@ -16,7 +16,7 @@ pub fn test_disabled_color() -> anyhow::Result<()> { module.dis(DisOptions { color: true, ..Default::default() - })? + }) )?; let mut color_disabled = Vec::new(); @@ -26,7 +26,7 @@ pub fn test_disabled_color() -> anyhow::Result<()> { module.dis(DisOptions { color: false, ..Default::default() - })? + }) )?; assert_eq!( diff --git a/crates/tools-gen/src/dis.rs b/crates/tools-gen/src/dis.rs index f41e8303..deb6b7e3 100644 --- a/crates/tools-gen/src/dis.rs +++ b/crates/tools-gen/src/dis.rs @@ -1,6 +1,5 @@ use clap::{Parser, ValueEnum}; -use rspirv2::dis::DisOptions; -use rspirv2::inst::InstEncoding; +use rspirv2::dis::{DisOptions, InstSetDisCtx}; use rspirv2::module::Module; use std::io::Write; use std::path::PathBuf; @@ -26,7 +25,7 @@ pub enum Like { } impl Args { - pub fn run(&self, stdout: &mut impl Write) -> anyhow::Result<()> { + pub fn run(&self, stdout: &mut impl Write) -> anyhow::Result<()> { let mut slice = std::fs::read(&self.path)?; if self.module_swap_bytes { for chunk in slice.as_chunks_mut::<4>().0.iter_mut() { @@ -35,7 +34,7 @@ impl Args { } let module = Module::::from_bytes(slice.as_slice())?; - write!(stdout, "{}", module.dis(self.to_dis_opts()?)?)?; + write!(stdout, "{}", module.dis(self.to_dis_opts()?))?; Ok(()) } diff --git a/spv/dis_reference.rspirv2 b/spv/dis_reference.rspirv2 index 5964e2dd..a3b2a775 100644 --- a/spv/dis_reference.rspirv2 +++ b/spv/dis_reference.rspirv2 @@ -110,7 +110,7 @@ OpDecorate %4 DescriptorSet 1 %21 = OpTypeFunction %10 %10 %22 = OpConstant %10 1 %23 = OpTypeBool -%24 = OpConstant %15 1071225242 +%24 = OpConstant %15 1.7 %25 = OpConstant %10 1333788671 %26 = OpConstant %10 4294967295 %27 = OpConstant %10 5 diff --git a/spv/dis_reference.rspirv_like b/spv/dis_reference.rspirv_like index f838124e..13b1ab50 100644 --- a/spv/dis_reference.rspirv_like +++ b/spv/dis_reference.rspirv_like @@ -41,7 +41,7 @@ OpDecorate %4 DescriptorSet 1 %21 = OpTypeFunction %10 %10 %22 = OpConstant %10 1 %23 = OpTypeBool -%24 = OpConstant %15 1071225242 +%24 = OpConstant %15 1.7 %25 = OpConstant %10 1333788671 %26 = OpConstant %10 4294967295 %27 = OpConstant %10 5 diff --git a/spv/dis_reference.spirv_tools_like b/spv/dis_reference.spirv_tools_like index 5964e2dd..a3b2a775 100644 --- a/spv/dis_reference.spirv_tools_like +++ b/spv/dis_reference.spirv_tools_like @@ -110,7 +110,7 @@ OpDecorate %4 DescriptorSet 1 %21 = OpTypeFunction %10 %10 %22 = OpConstant %10 1 %23 = OpTypeBool -%24 = OpConstant %15 1071225242 +%24 = OpConstant %15 1.7 %25 = OpConstant %10 1333788671 %26 = OpConstant %10 4294967295 %27 = OpConstant %10 5 From 02c073e45b1cccc1ff02503b2db651636721b98f Mon Sep 17 00:00:00 2001 From: firestar99 Date: Thu, 19 Mar 2026 10:41:24 +0100 Subject: [PATCH 03/12] dis ctx: dis with signed integer constants --- .../src/operand/literal_const.rs | 12 +++++++---- .../src/operand/literal_integer.rs | 16 +++++++++++--- crates/rspirv2/src/dis.rs | 21 +++++++++++++++---- 3 files changed, 38 insertions(+), 11 deletions(-) diff --git a/crates/rspirv2-types/src/operand/literal_const.rs b/crates/rspirv2-types/src/operand/literal_const.rs index e056019c..a665ef11 100644 --- a/crates/rspirv2-types/src/operand/literal_const.rs +++ b/crates/rspirv2-types/src/operand/literal_const.rs @@ -186,8 +186,10 @@ unsafe impl OperandEncoding for LiteralConst { .copied() .unwrap_or_default(); match (self.0.len(), fmt) { - (1, ConstFmt::Decimal) => write!(f, " {color}{}{color:#}", self.as_u32().unwrap()), - (2, ConstFmt::Decimal) => write!(f, " {color}{}{color:#}", self.as_u64().unwrap()), + (1, ConstFmt::Unsigned) => write!(f, " {color}{}{color:#}", self.as_u32().unwrap()), + (2, ConstFmt::Unsigned) => write!(f, " {color}{}{color:#}", self.as_u64().unwrap()), + (1, ConstFmt::Signed) => write!(f, " {color}{}{color:#}", self.as_i32().unwrap()), + (2, ConstFmt::Signed) => write!(f, " {color}{}{color:#}", self.as_i64().unwrap()), (1, ConstFmt::LowerHex) => write!(f, " {color}{:x}{color:#}", self.as_u32().unwrap()), (2, ConstFmt::LowerHex) => write!(f, " {color}{:x}{color:#}", self.as_u64().unwrap()), (1, ConstFmt::UpperHex) => write!(f, " {color}{:X}{color:#}", self.as_u32().unwrap()), @@ -202,9 +204,11 @@ unsafe impl OperandEncoding for LiteralConst { /// How the untyped constant value of a [`LiteralConst`] should be formatted #[derive(Copy, Clone, Debug, Default, Eq, PartialEq, Hash)] pub enum ConstFmt { - /// Format constant as a decimal integer + /// Format constant as an unsigned decimal integer #[default] - Decimal, + Unsigned, + /// Format constant as a signed decimal integer + Signed, /// **INCOMPLIANT** Format constant as a lower case hex value /// /// Hex values in disassembly are not supported by `spirv-as` diff --git a/crates/rspirv2-types/src/operand/literal_integer.rs b/crates/rspirv2-types/src/operand/literal_integer.rs index 0fa33123..8d5ff21f 100644 --- a/crates/rspirv2-types/src/operand/literal_integer.rs +++ b/crates/rspirv2-types/src/operand/literal_integer.rs @@ -34,25 +34,35 @@ macro_rules! def_literal_integer { unsafe impl bytemuck::Pod for $name {} impl $name { + #[inline] + pub fn from_word(value: Word) -> Self { + Self(value) + } + #[inline] pub fn new(value: u32) -> Self { Self(Word(value)) } #[inline] - pub fn from_word(value: Word) -> Self { - Self(value) + pub fn from_bool(value: bool) -> Self { + Self(Word(value as u32)) } #[inline] pub fn to_word(&self) -> Word { self.0 } - #[inline] + #[inline] pub fn to_u32(&self) -> u32 { self.0.0 } + + #[inline] + pub fn to_bool(&self) -> bool { + self.0.0 != 0 + } } unsafe impl Operand for $name { diff --git a/crates/rspirv2/src/dis.rs b/crates/rspirv2/src/dis.rs index 749e1a60..e0c9f0b0 100644 --- a/crates/rspirv2/src/dis.rs +++ b/crates/rspirv2/src/dis.rs @@ -1,5 +1,5 @@ use crate::core::inst_set::CoreInstSet; -use crate::core::inst_set::CoreInstSet::TypeFloat; +use crate::core::inst_set::CoreInstSet::{TypeFloat, TypeInt}; pub use rspirv2_types::dis::*; use rspirv2_types::operand::ConstFmt; use rspirv2_types::slice::InstSlice; @@ -7,9 +7,22 @@ use rspirv2_types::slice::InstSlice; impl InstSetDisCtx for CoreInstSet { fn add_context(slice: &InstSlice, ctx: &mut DisContext) { for inst in slice.iter() { - if let TypeFloat(inst) = inst { - ctx.id_to_const_fmt - .insert(inst.id_result.unwrap(), ConstFmt::Float); + match inst { + TypeFloat(inst) => { + ctx.id_to_const_fmt + .insert(inst.id_result.unwrap(), ConstFmt::Float); + } + TypeInt(inst) => { + ctx.id_to_const_fmt.insert( + inst.id_result.unwrap(), + if inst.signedness.to_bool() { + ConstFmt::Signed + } else { + ConstFmt::Unsigned + }, + ); + } + _ => {} } } } From 6e7ced9d7ff42b38cab01fad2634ac5435421532 Mon Sep 17 00:00:00 2001 From: firestar99 Date: Thu, 19 Mar 2026 10:59:07 +0100 Subject: [PATCH 04/12] dis ctx: add tests for composite type disassembly, failing --- Cargo.lock | 1 + crates/rspirv2/Cargo.toml | 1 + crates/rspirv2/tests/dis.rs | 50 ++++++++++++++++++++++++++++--------- 3 files changed, 40 insertions(+), 12 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b0eddfb7..0e68ea02 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -235,6 +235,7 @@ dependencies = [ "anyhow", "bitflags", "bytemuck", + "expect-test", "rspirv2-types", "smallvec", "spv", diff --git a/crates/rspirv2/Cargo.toml b/crates/rspirv2/Cargo.toml index a56b66e9..1e2526dd 100644 --- a/crates/rspirv2/Cargo.toml +++ b/crates/rspirv2/Cargo.toml @@ -19,3 +19,4 @@ bytemuck = { workspace = true, optional = true } anyhow.workspace = true spv.workspace = true anstream.workspace = true +expect-test.workspace = true diff --git a/crates/rspirv2/tests/dis.rs b/crates/rspirv2/tests/dis.rs index 3dc9d80d..0ca29fbf 100644 --- a/crates/rspirv2/tests/dis.rs +++ b/crates/rspirv2/tests/dis.rs @@ -1,11 +1,15 @@ -use rspirv2::core::inst::{OpLoad, OpTypeFloat}; -use rspirv2::core::operands::{CooperativeMatrixReduce, Dim}; +use expect_test::expect; +use rspirv2::core::inst::{OpLoad, OpPhi, OpSwitch, OpTypeFloat}; +use rspirv2::core::operands::{ + CooperativeMatrixReduce, Dim, PairIdRefIdRef, PairLiteralIntegerIdRef, +}; use rspirv2_types::binary::{IdResultAlloc, IdResultAllocator}; use rspirv2_types::dis::{DisContext, DisOptions}; use rspirv2_types::inst::InstEncoding; use rspirv2_types::operand::{ IdRef, IdResultType, LiteralInteger, OperandDisContext, OperandEncoding, }; +use smallvec::SmallVec; #[test] pub fn test_dis_optional_operand() -> anyhow::Result<()> { @@ -16,14 +20,39 @@ pub fn test_dis_optional_operand() -> anyhow::Result<()> { width: LiteralInteger::new(32), floating_point_encoding: None, }; - assert_eq!("%0 = OpTypeFloat 32", float.dis(&ctx).to_string()); - let float = OpLoad { + expect!["%0 = OpTypeFloat 32"].assert_eq(&float.dis(&ctx).to_string()); + let load = OpLoad { id_result_type: IdResultType(float.id_result.unwrap()), id_result: Some(alloc.alloc_id()?), pointer: IdRef(alloc.alloc_id()?), memory_access: None, }; - assert_eq!("%1 = OpLoad %0 %2", float.dis(&ctx).to_string()); + expect!["%1 = OpLoad %0 %2"].assert_eq(&load.dis(&ctx).to_string()); + Ok(()) +} + +#[test] +pub fn test_dis_composite_types() -> anyhow::Result<()> { + let ctx = DisContext::no_context(DisOptions::simple()); + let mut alloc = IdResultAllocator::default(); + let switch = OpSwitch { + selector: IdRef(alloc.alloc_id()?), + default: IdRef(alloc.alloc_id()?), + target: SmallVec::from_iter([ + PairLiteralIntegerIdRef(LiteralInteger::new(42), IdRef(alloc.alloc_id()?)), + PairLiteralIntegerIdRef(LiteralInteger::new(69), IdRef(alloc.alloc_id()?)), + ]), + }; + expect!["OpSwitch %0 %1 42 %2 69 %3"].assert_eq(&switch.dis(&ctx).to_string()); + let phi = OpPhi { + id_result_type: IdResultType(alloc.alloc_id()?), + id_result: Some(alloc.alloc_id()?), + pair_id_ref_id_ref: SmallVec::from_iter([ + PairIdRefIdRef(IdRef(alloc.alloc_id()?), IdRef(alloc.alloc_id()?)), + PairIdRefIdRef(IdRef(alloc.alloc_id()?), IdRef(alloc.alloc_id()?)), + ]), + }; + expect!["%5 = OpPhi %4 %6 %7 %8 %9"].assert_eq(&phi.dis(&ctx).to_string()); Ok(()) } @@ -32,12 +61,9 @@ pub fn test_dis_optional_operand() -> anyhow::Result<()> { pub fn test_dis_renamed_symbols() -> anyhow::Result<()> { let ctx = DisContext::no_context(DisOptions::simple()); let ctx = OperandDisContext::new(&ctx); - assert_eq!(" 1D", Dim::Dim1D.dis(&ctx).to_string()); - assert_eq!(" 2D", Dim::Dim2D.dis(&ctx).to_string()); - assert_eq!(" 3D", Dim::Dim3D.dis(&ctx).to_string()); - assert_eq!( - " 2x2", - CooperativeMatrixReduce::TwoByTwo.dis(&ctx).to_string() - ); + expect!(" 1D").assert_eq(&Dim::Dim1D.dis(&ctx).to_string()); + expect!(" 2D").assert_eq(&Dim::Dim2D.dis(&ctx).to_string()); + expect!(" 3D").assert_eq(&Dim::Dim3D.dis(&ctx).to_string()); + expect!(" 2x2").assert_eq(&CooperativeMatrixReduce::TwoByTwo.dis(&ctx).to_string()); Ok(()) } From 5e86638f0ac7fc21d0eb3e4de10bb5fcc0bcbfaf Mon Sep 17 00:00:00 2001 From: firestar99 Date: Thu, 19 Mar 2026 10:50:23 +0100 Subject: [PATCH 05/12] dis ctx: fix composite type disassembly emitting extra spaces --- crates/grammar-parser/src/codegen/operands.rs | 2 +- crates/rspirv2/src/core/operands.rs | 6 +++--- crates/rspirv2/tests/dis.rs | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/crates/grammar-parser/src/codegen/operands.rs b/crates/grammar-parser/src/codegen/operands.rs index ef841143..9576d9f3 100644 --- a/crates/grammar-parser/src/codegen/operands.rs +++ b/crates/grammar-parser/src/codegen/operands.rs @@ -329,7 +329,7 @@ fn emit_composite(operand_kind: &OperandKind<'_>, bases: &[Cow<'_, str>]) -> Tok quote!(OperandEncoding::encode(&self.#i, &mut *writer)?) }); let decode = (0..bases.len()).map(|_| quote!(OperandEncoding::decode(&mut *reader)?)); - let dis_pat = (0..bases.len()).map(|_| " {}").collect::(); + let dis_pat = (0..bases.len()).map(|_| "{}").collect::(); let dis_values = (0..bases.len()).map(|i| { let i = proc_macro2::Literal::usize_unsuffixed(i); quote!(OperandEncoding::dis(&self.#i, ctx)) diff --git a/crates/rspirv2/src/core/operands.rs b/crates/rspirv2/src/core/operands.rs index 6aa1a471..98486d8e 100644 --- a/crates/rspirv2/src/core/operands.rs +++ b/crates/rspirv2/src/core/operands.rs @@ -6703,7 +6703,7 @@ unsafe impl OperandEncoding for PairLiteralIntegerIdRef { fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { write!( f, - " {} {}", + "{}{}", OperandEncoding::dis(&self.0, ctx), OperandEncoding::dis(&self.1, ctx) ) @@ -6734,7 +6734,7 @@ unsafe impl OperandEncoding for PairIdRefLiteralInteger { fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { write!( f, - " {} {}", + "{}{}", OperandEncoding::dis(&self.0, ctx), OperandEncoding::dis(&self.1, ctx) ) @@ -6765,7 +6765,7 @@ unsafe impl OperandEncoding for PairIdRefIdRef { fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { write!( f, - " {} {}", + "{}{}", OperandEncoding::dis(&self.0, ctx), OperandEncoding::dis(&self.1, ctx) ) diff --git a/crates/rspirv2/tests/dis.rs b/crates/rspirv2/tests/dis.rs index 0ca29fbf..1dbcec8a 100644 --- a/crates/rspirv2/tests/dis.rs +++ b/crates/rspirv2/tests/dis.rs @@ -43,7 +43,7 @@ pub fn test_dis_composite_types() -> anyhow::Result<()> { PairLiteralIntegerIdRef(LiteralInteger::new(69), IdRef(alloc.alloc_id()?)), ]), }; - expect!["OpSwitch %0 %1 42 %2 69 %3"].assert_eq(&switch.dis(&ctx).to_string()); + expect!["OpSwitch %0 %1 42 %2 69 %3"].assert_eq(&switch.dis(&ctx).to_string()); let phi = OpPhi { id_result_type: IdResultType(alloc.alloc_id()?), id_result: Some(alloc.alloc_id()?), @@ -52,7 +52,7 @@ pub fn test_dis_composite_types() -> anyhow::Result<()> { PairIdRefIdRef(IdRef(alloc.alloc_id()?), IdRef(alloc.alloc_id()?)), ]), }; - expect!["%5 = OpPhi %4 %6 %7 %8 %9"].assert_eq(&phi.dis(&ctx).to_string()); + expect!["%5 = OpPhi %4 %6 %7 %8 %9"].assert_eq(&phi.dis(&ctx).to_string()); Ok(()) } From f3b6645306e4a985e0b79f2be0a0e7cf00b3c863 Mon Sep 17 00:00:00 2001 From: firestar99 Date: Fri, 20 Mar 2026 18:28:50 +0100 Subject: [PATCH 06/12] dis ctx: add clap `--color` option by disabling color in dis, replacing `anstream::AutoStream` --- crates/tools-gen/src/dis.rs | 47 +++++++++++++++++++++++++++++++++---- crates/tools/src/bin/dis.rs | 2 +- 2 files changed, 43 insertions(+), 6 deletions(-) diff --git a/crates/tools-gen/src/dis.rs b/crates/tools-gen/src/dis.rs index deb6b7e3..12afd759 100644 --- a/crates/tools-gen/src/dis.rs +++ b/crates/tools-gen/src/dis.rs @@ -1,7 +1,7 @@ use clap::{Parser, ValueEnum}; use rspirv2::dis::{DisOptions, InstSetDisCtx}; use rspirv2::module::Module; -use std::io::Write; +use std::io::{BufWriter, Write}; use std::path::PathBuf; #[derive(Clone, Debug, Default, Parser)] @@ -9,8 +9,11 @@ pub struct Args { /// path to SPIR-V file path: PathBuf, /// Emit disassembly like as if it was emitted by this tool - #[clap(short, long)] + #[arg(short, long, default_value_t)] like: Like, + /// color + #[clap(long, default_value_t)] + color: clap::ColorChoice, /// Swap bytes of the SPIR-V module before parsing, for testing #[clap(skip)] module_swap_bytes: bool, @@ -24,8 +27,40 @@ pub enum Like { SpirvTools, } +impl std::fmt::Display for Like { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + self.to_possible_value() + .expect("no values are skipped") + .get_name() + .fmt(f) + } +} + +impl Args { + pub fn resolve_auto_color(&mut self, stream: &impl anstream::stream::RawStream) { + if self.color == clap::ColorChoice::Auto { + self.color = match anstream::AutoStream::choice(stream) { + anstream::ColorChoice::Auto => unreachable!(), + anstream::ColorChoice::AlwaysAnsi | anstream::ColorChoice::Always => { + clap::ColorChoice::Always + } + anstream::ColorChoice::Never => clap::ColorChoice::Never, + } + } + } +} + impl Args { - pub fn run(&self, stdout: &mut impl Write) -> anyhow::Result<()> { + pub fn run( + &mut self, + stdout: &mut impl anstream::stream::RawStream, + ) -> anyhow::Result<()> { + self.resolve_auto_color(&*stdout); + let mut writer = BufWriter::new(stdout); + self.run_inner::(&mut writer) + } + + pub fn run_inner(&self, stdout: &mut impl Write) -> anyhow::Result<()> { let mut slice = std::fs::read(&self.path)?; if self.module_swap_bytes { for chunk in slice.as_chunks_mut::<4>().0.iter_mut() { @@ -39,11 +74,12 @@ impl Args { } pub fn to_dis_opts(&self) -> anyhow::Result { - let opt = match self.like { + let mut opt = match self.like { Like::Default => DisOptions::default(), Like::Rspirv => DisOptions::like_rspirv(), Like::SpirvTools => DisOptions::like_spirv_tools(), }; + opt.color = matches!(self.color, clap::ColorChoice::Always); Ok(opt) } } @@ -128,9 +164,10 @@ pub mod test { path: spv("dis_reference"), like, module_swap_bytes, + color: clap::ColorChoice::Never, }; let mut stdout = Vec::new(); - args.run::(&mut anstream::AutoStream::never(&mut stdout))?; + args.run_inner::(&mut stdout)?; let stdout = String::from_utf8(stdout)?; expect.assert_eq(&stdout); Ok(()) diff --git a/crates/tools/src/bin/dis.rs b/crates/tools/src/bin/dis.rs index 30d7cc1e..26202b85 100644 --- a/crates/tools/src/bin/dis.rs +++ b/crates/tools/src/bin/dis.rs @@ -2,5 +2,5 @@ use clap::Parser; use rspirv2_tools::ToolsISA; pub fn main() -> anyhow::Result<()> { - rspirv2_tools_gen::dis::Args::parse().run::(&mut anstream::stdout().lock()) + rspirv2_tools_gen::dis::Args::parse().run::(&mut std::io::stdout().lock()) } From edffe19fcfa8e12026e326a9907e3e4fb546cbae Mon Sep 17 00:00:00 2001 From: firestar99 Date: Wed, 25 Mar 2026 17:43:11 +0100 Subject: [PATCH 07/12] dis ctx: make disassemble handle invalid instruction gracefully --- .cargo/config.toml | 2 +- crates/rspirv2-types/src/dis.rs | 87 +++++++++++-- crates/rspirv2-types/src/slice.rs | 64 ++++------ crates/rspirv2/src/dis.rs | 6 +- crates/rspirv2/tests/dis_invalid_inst.rs | 152 +++++++++++++++++++++++ crates/tools-gen/src/dis.rs | 10 +- 6 files changed, 265 insertions(+), 56 deletions(-) create mode 100644 crates/rspirv2/tests/dis_invalid_inst.rs diff --git a/.cargo/config.toml b/.cargo/config.toml index 54ff3502..560b12ff 100644 --- a/.cargo/config.toml +++ b/.cargo/config.toml @@ -1,3 +1,3 @@ [alias] autogen = "run --bin autogen --release --" -dis = "run -p rspirv2-tools --bin rspirv2-dis -q --" +dis = "run -p rspirv2-tools --bin rspirv2-dis --release -q --" diff --git a/crates/rspirv2-types/src/dis.rs b/crates/rspirv2-types/src/dis.rs index 431985b8..998d9b0e 100644 --- a/crates/rspirv2-types/src/dis.rs +++ b/crates/rspirv2-types/src/dis.rs @@ -2,11 +2,12 @@ use crate::inst::InstEncoding; use crate::operand::{ConstFmt, IdResult, LiteralStringEscape}; -use crate::slice::InstSlice; +use crate::slice::{InstSlice, RawInstSlice}; use anstyle::Style; use rustc_hash::FxHashMap; use std::cell::Cell; use std::fmt::{Display, Formatter}; +use std::marker::PhantomData; use std::ops::{Deref, DerefMut}; /// Options for disassembly @@ -100,15 +101,15 @@ pub struct DisContext { } impl DisContext { - /// Create a new [`DisContext`] by scanning the module for useful information, based on the options provided. - #[inline] - pub fn new(opt: DisOptions, slice: &InstSlice) -> Self { - let mut context = Self::no_context(opt); - context.add_context(slice); - context + /// Scan the supplied [`InstSlice`] for useful context + pub fn add_context(&mut self, slice: &InstSlice) { + ISA::add_context(slice.as_raw(), self); } - pub fn add_context(&mut self, slice: &InstSlice) { + /// Scan the supplied [`InstSlice`] for useful context, skip over any [`DecodeError`]s that may arise + /// + /// [`DecodeError`]: crate::binary::DecodeError + pub fn add_context_raw(&mut self, slice: &RawInstSlice) { ISA::add_context(slice, self); } @@ -126,9 +127,17 @@ impl DisContext { } } -/// An instruction set that provides additional context information for disassembly, see [`DisContext`]. +/// An instruction set that provides additional context information for disassembly. pub trait InstSetDisCtx: InstEncoding { - fn add_context(slice: &InstSlice, ctx: &mut DisContext); + /// Add context to the supplied [`DisContext`] by modifying the various public members of it. + /// + /// Only supplies a [`RawInstSlice`] instead of a full [`InstSlice`] that has been error checked, as to allow + /// disassembly of partially corrupt instructions. Any [`DecodeError`] that arrises during decode should be silently + /// ignored. We recommend using `slice.iter().try_decode::().skip_errors()` to decode instructions + /// from the [`RawInstSlice`]. + /// + /// [`DecodeError`]: crate::binary::DecodeError + fn add_context(slice: &RawInstSlice, ctx: &mut DisContext); } impl Deref for DisContext { @@ -144,6 +153,64 @@ impl DerefMut for DisContext { } } +/// Either [`DisContext`] or [`DisOptions`] that is turned into one via [`DisContext::no_context`]. Actual context needs +/// to be gathered yourself, see warning in [`DisContext::no_context`]. +pub trait IntoDisContext { + fn into_dis_ctx(self) -> DisContext; +} + +impl IntoDisContext for DisContext { + fn into_dis_ctx(self) -> DisContext { + self + } +} + +impl IntoDisContext for DisOptions { + fn into_dis_ctx(self) -> DisContext { + DisContext::no_context(self) + } +} + +/// A sequence of words that has been pre-processed and may be [`Display`]ed. +/// +/// The `ISA: `[`InstEncoding`] generic determines for which instruction set these Words are disassembled. +pub struct DisInstSlice<'a, ISA: InstSetDisCtx> { + slice: &'a RawInstSlice, + ctx: DisContext, + _phantom: PhantomData, +} + +impl<'a, ISA: InstSetDisCtx> DisInstSlice<'a, ISA> { + #[inline] + pub fn new(slice: impl Into<&'a RawInstSlice>, ctx: impl IntoDisContext) -> Self { + let slice = slice.into(); + let mut ctx = ctx.into_dis_ctx(); + ctx.add_context_raw::(slice); + Self::new_no_context(slice, ctx) + } + + #[inline] + pub fn new_no_context(slice: impl Into<&'a RawInstSlice>, ctx: impl IntoDisContext) -> Self { + Self { + slice: slice.into(), + ctx: ctx.into_dis_ctx(), + _phantom: PhantomData, + } + } +} + +impl<'a, ISA: InstSetDisCtx> Display for DisInstSlice<'a, ISA> { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + for maybe_reader in self.slice.iter() { + match maybe_reader.and_then(|reader| ISA::decode(reader)) { + Ok(inst) => writeln!(f, "{}", inst.dis(&self.ctx))?, + Err(e) => writeln!(f, "Error: {}", e)?, + } + } + Ok(()) + } +} + /// Utility struct for inserting separators between variants. Use it like `format!({sep}{value})`, will skip the /// separator on first write. /// diff --git a/crates/rspirv2-types/src/slice.rs b/crates/rspirv2-types/src/slice.rs index 0ce6db0e..ed23c5df 100644 --- a/crates/rspirv2-types/src/slice.rs +++ b/crates/rspirv2-types/src/slice.rs @@ -1,8 +1,8 @@ use crate::Word; use crate::binary::{DecodeError, InstOffset, InstReader}; -use crate::dis::{DisContext, DisOptions, InstSetDisCtx}; +use crate::dis::{DisInstSlice, InstSetDisCtx, IntoDisContext}; use crate::inst::{InstEncoding, InstRef}; -use std::fmt::{Debug, Display, Formatter}; +use std::fmt::{Debug, Formatter}; use std::marker::PhantomData; use std::ops::Deref; @@ -114,35 +114,8 @@ impl Debug for InstSlice { impl InstSlice { /// disassemble #[inline] - pub fn dis(&self, opt: DisOptions) -> DisInstSlice<'_, ISA> { - DisInstSlice::new(self, opt) - } -} - -/// A sequence of words that has been pre-processed and may be [`Display`]ed. -/// -/// The `ISA: `[`InstEncoding`] generic determines for which instruction set these Words are disassembled. -pub struct DisInstSlice<'a, ISA: InstSetDisCtx> { - slice: &'a InstSlice, - dis: DisContext, -} - -impl<'a, ISA: InstSetDisCtx> DisInstSlice<'a, ISA> { - #[inline] - pub fn new(slice: &'a InstSlice, opt: DisOptions) -> Self { - Self { - slice, - dis: DisContext::new(opt, slice), - } - } -} - -impl<'a, ISA: InstSetDisCtx> Display for DisInstSlice<'a, ISA> { - fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { - for inst in self.slice.iter() { - writeln!(f, "{}", inst.dis(&self.dis))?; - } - Ok(()) + pub fn dis(&self, ctx: impl IntoDisContext) -> DisInstSlice<'_, ISA> { + DisInstSlice::::new(self, ctx) } } @@ -345,6 +318,14 @@ impl<'a, ISA: InstEncoding> From<&'a InstSlice> for &'a RawInstSlice { } } +impl RawInstSlice { + /// disassemble + #[inline] + pub fn dis(&self, ctx: impl IntoDisContext) -> DisInstSlice<'_, ISA> { + DisInstSlice::::new(self, ctx) + } +} + /// An [`Iterator`] of [`Result`]s yielding either a tuple of [`InstOffset`] and [`InstReader`], or a [`DecodeError`] #[derive(Clone, Debug)] pub struct RawInstOffsetRefIter<'a> { @@ -368,14 +349,21 @@ impl<'a> Iterator for RawInstOffsetRefIter<'a> { #[inline] fn next(&mut self) -> Option { - match InstReader::from_words(&self.raw.0[*self.offset..]) { - Ok(inst_reader) => { - let old_offset = self.offset; - *self.offset += inst_reader.len(); - Some(Ok((old_offset, inst_reader))) + let old_offset = self.offset; + if let Some(words) = self.raw.0.get(*old_offset..) { + match InstReader::from_words(words) { + Ok(inst_reader) => { + *self.offset += inst_reader.len(); + Some(Ok((old_offset, inst_reader))) + } + Err(DecodeError::OutOfInstructions) => None, + Err(e) => { + self.offset = InstOffset(!0); + Some(Err(e)) + } } - Err(DecodeError::OutOfInstructions) => None, - Err(e) => Some(Err(e)), + } else { + None } } } diff --git a/crates/rspirv2/src/dis.rs b/crates/rspirv2/src/dis.rs index e0c9f0b0..8ebb6723 100644 --- a/crates/rspirv2/src/dis.rs +++ b/crates/rspirv2/src/dis.rs @@ -2,11 +2,11 @@ use crate::core::inst_set::CoreInstSet; use crate::core::inst_set::CoreInstSet::{TypeFloat, TypeInt}; pub use rspirv2_types::dis::*; use rspirv2_types::operand::ConstFmt; -use rspirv2_types::slice::InstSlice; +use rspirv2_types::slice::{RawInstSlice, SkipDecodeErrorIteratorExt, TryDecodeIteratorExt}; impl InstSetDisCtx for CoreInstSet { - fn add_context(slice: &InstSlice, ctx: &mut DisContext) { - for inst in slice.iter() { + fn add_context(slice: &RawInstSlice, ctx: &mut DisContext) { + for inst in slice.iter().try_decode::().skip_errors() { match inst { TypeFloat(inst) => { ctx.id_to_const_fmt diff --git a/crates/rspirv2/tests/dis_invalid_inst.rs b/crates/rspirv2/tests/dis_invalid_inst.rs new file mode 100644 index 00000000..665df78b --- /dev/null +++ b/crates/rspirv2/tests/dis_invalid_inst.rs @@ -0,0 +1,152 @@ +use expect_test::expect; +use rspirv2::core::inst::{OpName, OpNop, OpTypeInt, OpVariable}; +use rspirv2::core::inst_set::CoreInstSet; +use rspirv2::core::operands::StorageClass; +use rspirv2_types::Word; +use rspirv2_types::dis::{DisInstSlice, DisOptions}; +use rspirv2_types::inst::Inst; +use rspirv2_types::operand::{IdRef, IdResult, IdResultType, LiteralInteger, LiteralString}; +use rspirv2_types::slice::RawInstSlice; +use rspirv2_types::vec::InstVec; + +fn dis(raw: &RawInstSlice) -> String { + DisInstSlice::::new_no_context(raw, DisOptions::simple()).to_string() +} + +fn record_inst() -> InstVec { + let mut vec = InstVec::new(); + let id_u32 = IdResult(Word(42)); + let id_var = IdResult(Word(69)); + vec.push(OpTypeInt { + id_result: Some(id_u32), + width: LiteralInteger::new(32), + signedness: LiteralInteger::new(0), + }); + vec.push(OpName { + target: IdRef(id_var), + name: LiteralString::new("abcdef".to_string()), + }); + vec.push(OpVariable { + id_result_type: IdResultType(id_u32), + id_result: Some(id_var), + storage_class: StorageClass::StorageBuffer, + initializer: None, + }); + vec +} + +fn op_name_str_offset(words: &[Word]) -> usize { + words + .iter() + .enumerate() + .find(|(_, w)| **w == Word::from_le_bytes([b'a', b'b', b'c', b'd'])) + .unwrap() + .0 +} + +/// baseline is valid +#[test] +fn test_valid_dis() { + let words = record_inst().into_vec(); + expect![[r#" + %42 = OpTypeInt 32 0 + OpName %69 "abcdef" + %69 = OpVariable %42 StorageBuffer + "#]] + .assert_eq(&dis(RawInstSlice::from_words(&words))); +} + +/// even if one op fails to decode, as long as `op_len` is fine, we can jump over it and try to continue decoding +#[test] +fn test_no_null_term() { + let mut words = record_inst().into_vec(); + let str_offset = op_name_str_offset(&words); + words[str_offset + 1] = Word::from_le_bytes([b'e', b'f', b'g', b'h']); + expect![[r#" + %42 = OpTypeInt 32 0 + Error: String is not null-terminated. + %69 = OpVariable %42 StorageBuffer + "#]] + .assert_eq(&dis(RawInstSlice::from_words(&words))); +} + +/// even if one op fails to decode, as long as `op_len` is fine, we can jump over it and try to continue decoding +#[test] +fn test_shorter_str() { + let mut words = record_inst().into_vec(); + let str_offset = op_name_str_offset(&words); + words[str_offset] = Word::from_le_bytes([b'a', b'b', b'c', 0]); + words[str_offset + 1] = Word(0); + expect![[r#" + %42 = OpTypeInt 32 0 + Error: The fixed-size Instruction with 3 param words has 1 Words left over after decoding. + %69 = OpVariable %42 StorageBuffer + "#]] + .assert_eq(&dis(RawInstSlice::from_words(&words))); +} + +/// zero len op, no way to jump over inst, so stop the disassembly +#[test] +fn test_zero_len_op() { + let mut words = record_inst().into_vec(); + let str_offset = op_name_str_offset(&words); + words[str_offset - 2] = Word::new_op(OpName::META.opcode, 3).unwrap(); + words[str_offset] = Word::from_le_bytes([b'a', b'b', b'c', 0]); + words[str_offset + 1] = Word(0); + expect![[r#" + %42 = OpTypeInt 32 0 + OpName %69 "abc" + Error: Instruction has an invalid length of 0, must be least 1 word as it includes the opcode itself. + "#]] + .assert_eq(&dis(RawInstSlice::from_words(&words))); +} + +/// replacing with `OpNop` is not zeroing out the word, but replacing it with `0x10000` +#[test] +fn test_replace_nop() { + let mut words = record_inst().into_vec(); + let str_offset = op_name_str_offset(&words); + words[str_offset - 2] = Word::new_op(OpName::META.opcode, 3).unwrap(); + words[str_offset] = Word::from_le_bytes([b'a', b'b', b'c', 0]); + words[str_offset + 1] = Word::new_op(OpNop::META.opcode, 1).unwrap(); + expect![[r#" + %42 = OpTypeInt 32 0 + OpName %69 "abc" + OpNop + %69 = OpVariable %42 StorageBuffer + "#]] + .assert_eq(&dis(RawInstSlice::from_words(&words))); +} + +/// op longer than remaining words, no way to jump over inst, so stop the disassembly +#[test] +fn test_too_long_op() { + let mut words = record_inst().into_vec(); + let str_offset = op_name_str_offset(&words); + words[str_offset - 2] = Word::new_op(OpName::META.opcode, 0xDEAD).unwrap(); + expect![[r#" + %42 = OpTypeInt 32 0 + Error: Instruction has a supposed length of 57005 but the module only has 8 words remaining. + "#]] + .assert_eq(&dis(RawInstSlice::from_words(&words))); +} + +/// the string is longer than the instruction length: +/// * first string fails to decode +/// * then the remaining string is interpreted as a garbage opcode word, manipulated here to be of length 2, +/// fails due to unknown opcode +/// * jumps to `OpVariable + 1` and reinterprets the `IdResult` into a garbage opcode word of 0 length +#[test] +fn test_op_shorter_than_string() { + let mut words = record_inst().into_vec(); + let str_offset = op_name_str_offset(&words); + words[str_offset - 2] = Word::new_op(OpName::META.opcode, 3).unwrap(); + words[str_offset + 1] = Word::from_le_bytes([b'e', b'f', 2, 0]); + expect![[r#" + %42 = OpTypeInt 32 0 + Error: String is not null-terminated. + Error: Instruction Set couldn't decode instruction with unknown opcode 26213 + Error: Instruction has an invalid length of 0, must be least 1 word as it includes the opcode itself. + "#]] + .assert_eq(&dis(RawInstSlice::from_words(&words))); +} diff --git a/crates/tools-gen/src/dis.rs b/crates/tools-gen/src/dis.rs index 12afd759..efa1cf17 100644 --- a/crates/tools-gen/src/dis.rs +++ b/crates/tools-gen/src/dis.rs @@ -61,15 +61,17 @@ impl Args { } pub fn run_inner(&self, stdout: &mut impl Write) -> anyhow::Result<()> { - let mut slice = std::fs::read(&self.path)?; + let mut bytes = std::fs::read(&self.path)?; if self.module_swap_bytes { - for chunk in slice.as_chunks_mut::<4>().0.iter_mut() { + for chunk in bytes.as_chunks_mut::<4>().0.iter_mut() { *chunk = u32::from_ne_bytes(*chunk).swap_bytes().to_ne_bytes(); } } - let module = Module::::from_bytes(slice.as_slice())?; - write!(stdout, "{}", module.dis(self.to_dis_opts()?))?; + let module = Module::::from_bytes_unchecked(bytes.as_slice())?; + drop(bytes); + let dis = module.inst.as_raw_slice().dis::(self.to_dis_opts()?); + write!(stdout, "{}", dis)?; Ok(()) } From 2d610f926dcbc55fab7e8a367f18f7e43d20d9fa Mon Sep 17 00:00:00 2001 From: firestar99 Date: Wed, 18 Mar 2026 16:22:59 +0100 Subject: [PATCH 08/12] dis ctx: split up `DecodeError into `struct DecodeError` and `enum DecodeErrorKind` to add extra error info --- .../src/codegen/instructions.rs | 2 +- crates/grammar-parser/src/codegen/operands.rs | 8 +- .../rspirv2-types/src/binary/decode_error.rs | 48 +++- crates/rspirv2-types/src/binary/reader.rs | 21 +- crates/rspirv2-types/src/inst.rs | 13 +- .../src/operand/literal_const.rs | 20 +- .../src/operand/literal_string.rs | 4 +- crates/rspirv2-types/src/operand/mod.rs | 14 +- crates/rspirv2-types/src/slice.rs | 6 +- crates/rspirv2/src/core/inst_set.rs | 9 +- crates/rspirv2/src/core/operands.rs | 205 +++++++++++------- crates/rspirv2/src/debug_printf/inst_set.rs | 2 +- crates/rspirv2/src/glsl_std_450/inst_set.rs | 2 +- 13 files changed, 223 insertions(+), 131 deletions(-) diff --git a/crates/grammar-parser/src/codegen/instructions.rs b/crates/grammar-parser/src/codegen/instructions.rs index c5376277..f2ffbdea 100644 --- a/crates/grammar-parser/src/codegen/instructions.rs +++ b/crates/grammar-parser/src/codegen/instructions.rs @@ -220,7 +220,7 @@ pub fn write_inst_enum( let opcode = reader.opcode(); Ok(match opcode { #(#decode_match)* - _ => return Err(DecodeError::UnknownOpCode { opcode }), + _ => return Err(DecodeErrorKind::UnknownOpCode { opcode }.into()), }) } diff --git a/crates/grammar-parser/src/codegen/operands.rs b/crates/grammar-parser/src/codegen/operands.rs index 9576d9f3..11ee5a7c 100644 --- a/crates/grammar-parser/src/codegen/operands.rs +++ b/crates/grammar-parser/src/codegen/operands.rs @@ -139,10 +139,10 @@ fn emit_rust_like_enum( let variant = reader.pull()?.0; Ok(match variant { #(#decode,)* - _ => return Err(DecodeError::UnknownEnumVariant { + _ => return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(#name), variant, - }) + }.into()) }) } @@ -211,10 +211,10 @@ fn emit_c_like_enum(operand_kind: &OperandKind<'_>, enumerants: &[Enumerant<'_>] let variant = reader.pull()?.0; Ok(match variant { #(#decode,)* - _ => return Err(DecodeError::UnknownEnumVariant { + _ => return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(#name), variant, - }) + }.into()) }) } diff --git a/crates/rspirv2-types/src/binary/decode_error.rs b/crates/rspirv2-types/src/binary/decode_error.rs index 336d1928..d6f13790 100644 --- a/crates/rspirv2-types/src/binary/decode_error.rs +++ b/crates/rspirv2-types/src/binary/decode_error.rs @@ -6,7 +6,7 @@ use std::str::Utf8Error; use std::string::FromUtf8Error; #[derive(Clone, PartialEq)] -pub enum DecodeError { +pub enum DecodeErrorKind { UnknownOpCode { opcode: u16, }, @@ -55,7 +55,7 @@ pub enum DecodeError { }, } -impl Display for DecodeError { +impl Display for DecodeErrorKind { fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { match self { Self::UnknownOpCode { opcode } => write!( @@ -139,39 +139,69 @@ impl Display for DecodeError { } } -impl Debug for DecodeError { +impl Debug for DecodeErrorKind { fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { Display::fmt(self, f) } } -impl Error for DecodeError {} +impl Error for DecodeErrorKind {} + +#[derive(Clone, PartialEq)] +pub struct DecodeError { + pub kind: DecodeErrorKind, +} impl DecodeError { + #[inline] + pub fn new(kind: DecodeErrorKind) -> Self { + Self { kind } + } + #[inline] pub fn invalid_bitflags>(name: &'static str, bits: u32) -> Self { - Self::InvalidBitflags { + Self::new(DecodeErrorKind::InvalidBitflags { name, unknown: bits & T::all().bits(), bits, - } + }) + } +} + +impl From for DecodeError { + fn from(variant: DecodeErrorKind) -> Self { + Self::new(variant) } } impl From for DecodeError { fn from(_: FromBytesUntilNulError) -> Self { - Self::StringNotNulTerminated + Self::new(DecodeErrorKind::StringNotNulTerminated) } } impl From for DecodeError { fn from(value: Utf8Error) -> Self { - Self::Utf8Error(value) + Self::new(DecodeErrorKind::Utf8Error(value)) } } impl From for DecodeError { fn from(value: FromUtf8Error) -> Self { - Self::Utf8Error(value.utf8_error()) + Self::new(DecodeErrorKind::Utf8Error(value.utf8_error())) } } + +impl Display for DecodeError { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + write!(f, "{}", self.kind) + } +} + +impl Debug for DecodeError { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + Display::fmt(self, f) + } +} + +impl Error for DecodeError {} diff --git a/crates/rspirv2-types/src/binary/reader.rs b/crates/rspirv2-types/src/binary/reader.rs index 29222531..37964614 100644 --- a/crates/rspirv2-types/src/binary/reader.rs +++ b/crates/rspirv2-types/src/binary/reader.rs @@ -1,5 +1,5 @@ use crate::Word; -use crate::binary::DecodeError; +use crate::binary::{DecodeError, DecodeErrorKind}; use crate::meta::InstMeta; use std::cmp::Ordering; use std::fmt::{Display, Formatter}; @@ -39,15 +39,15 @@ impl<'a> InstReader<'a> { /// words not associated with this instruction. Use [`Self::len`] to figure out how many words have been consumed /// by this instruction. pub fn from_words(words: &'a [Word]) -> Result { - let first = words.first().ok_or(DecodeError::OutOfInstructions)?; + let first = words.first().ok_or(DecodeErrorKind::OutOfInstructions)?; let (_, op_len) = first.to_op(); if op_len == 0 { // len must at least be 1, as it includes the op Word itself - return Err(DecodeError::InstructionZeroSized); + return Err(DecodeErrorKind::InstructionZeroSized.into()); } let inst_words = words .get(0..op_len) - .ok_or(DecodeError::InstructionTooLong { + .ok_or(DecodeErrorKind::InstructionTooLong { op_len, module_remaining: words.len(), })?; @@ -72,11 +72,12 @@ impl<'a> InstReader<'a> { pub fn check_opcode(&self, meta: &InstMeta) -> Result, DecodeError> { let opcode = self.opcode(); if opcode != meta.opcode { - Err(DecodeError::WrongOpCode { + Err(DecodeErrorKind::WrongOpCode { name: meta.opname, expected: meta.opcode, actual: opcode, - }) + } + .into()) } else { Ok(self.operand_reader()) } @@ -142,19 +143,21 @@ impl<'a> OperandReader<'a> { pub fn finalize(&self) -> Result<(), DecodeError> { let remaining = self.remaining(); match 0.cmp(&remaining) { - Ordering::Less => Err(DecodeError::InstructionWithAdditionalOperants { + Ordering::Less => Err(DecodeErrorKind::InstructionWithAdditionalOperants { param_len: self.params.len(), remaining, - }), + } + .into()), Ordering::Equal => Ok(()), Ordering::Greater => Err(self.err_too_many_words()), } } fn err_too_many_words(&self) -> DecodeError { - DecodeError::InstructionDecodePulledTooManyWords { + DecodeErrorKind::InstructionDecodePulledTooManyWords { param_len: self.len(), } + .into() } /// View the *remaining* Words as a slice, does not advance the `params_offset`. diff --git a/crates/rspirv2-types/src/inst.rs b/crates/rspirv2-types/src/inst.rs index f9a5278e..d7b2abe0 100644 --- a/crates/rspirv2-types/src/inst.rs +++ b/crates/rspirv2-types/src/inst.rs @@ -1,5 +1,7 @@ use crate::Word; -use crate::binary::{DecodeError, EncodeError, IdResultAlloc, InstReader, WordWriter}; +use crate::binary::{ + DecodeError, DecodeErrorKind, EncodeError, IdResultAlloc, InstReader, WordWriter, +}; use crate::dis::DisContext; use crate::meta::InstMeta; use crate::operand::{IdResult, OptionIdResult}; @@ -38,7 +40,9 @@ pub trait InstEncoding: Sized + Debug + Eq { fn try_decode(reader: InstReader<'_>) -> Result, DecodeError> { match Self::decode(reader) { Ok(e) => Ok(Some(e)), - Err(DecodeError::WrongOpCode { .. } | DecodeError::UnknownOpCode { .. }) => Ok(None), + Err(DecodeError { + kind: DecodeErrorKind::WrongOpCode { .. } | DecodeErrorKind::UnknownOpCode { .. }, + }) => Ok(None), Err(e) => Err(e), } } @@ -65,9 +69,10 @@ impl InstEncoding for () { } fn decode(reader: InstReader<'_>) -> Result { - Err(DecodeError::UnknownOpCode { + Err(DecodeErrorKind::UnknownOpCode { opcode: reader.opcode(), - }) + } + .into()) } fn dis_fmt(&self, _: &mut Formatter<'_>, _: &DisContext) -> std::fmt::Result { diff --git a/crates/rspirv2-types/src/operand/literal_const.rs b/crates/rspirv2-types/src/operand/literal_const.rs index a665ef11..19a550fb 100644 --- a/crates/rspirv2-types/src/operand/literal_const.rs +++ b/crates/rspirv2-types/src/operand/literal_const.rs @@ -1,5 +1,5 @@ use crate::Word; -use crate::binary::{DecodeError, EncodeError, OperandReader, WordWriter}; +use crate::binary::{DecodeError, DecodeErrorKind, EncodeError, OperandReader, WordWriter}; use crate::meta::{Category, OperandKind}; use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; @@ -95,10 +95,11 @@ impl LiteralConst { if self.0.len() == 2 { Ok(self.0[0].0 as u64 | (self.0[1].0 as u64) << 32) } else { - Err(DecodeError::LiteralConstOfWrongWordSize { + Err(DecodeErrorKind::LiteralConstOfWrongWordSize { expected_size: 2, actual_size: self.0.len(), - }) + } + .into()) } } @@ -106,21 +107,24 @@ impl LiteralConst { if self.0.len() == 1 { Ok(self.0[0].0) } else { - Err(DecodeError::LiteralConstOfWrongWordSize { + Err(DecodeErrorKind::LiteralConstOfWrongWordSize { expected_size: 1, actual_size: self.0.len(), - }) + } + .into()) } } pub fn as_u16(&self) -> Result { let value = self.as_u32()?; - u16::try_from(value).map_err(|_| DecodeError::LiteralConstTooLarge { value, bits: 16 }) + u16::try_from(value) + .map_err(|_| DecodeErrorKind::LiteralConstTooLarge { value, bits: 16 }.into()) } pub fn as_u8(&self) -> Result { let value = self.as_u32()?; - u8::try_from(value).map_err(|_| DecodeError::LiteralConstTooLarge { value, bits: 8 }) + u8::try_from(value) + .map_err(|_| DecodeErrorKind::LiteralConstTooLarge { value, bits: 8 }.into()) } } @@ -169,7 +173,7 @@ unsafe impl OperandEncoding for LiteralConst { #[inline] fn decode(_: &mut OperandReader<'_>) -> Result { - Err(DecodeError::LiteralConstNotLastOperand) + Err(DecodeErrorKind::LiteralConstNotLastOperand.into()) } #[inline] diff --git a/crates/rspirv2-types/src/operand/literal_string.rs b/crates/rspirv2-types/src/operand/literal_string.rs index 80848dbf..a5b24696 100644 --- a/crates/rspirv2-types/src/operand/literal_string.rs +++ b/crates/rspirv2-types/src/operand/literal_string.rs @@ -1,5 +1,5 @@ use crate::Word; -use crate::binary::{DecodeError, EncodeError, OperandReader, WordWriter}; +use crate::binary::{DecodeError, DecodeErrorKind, EncodeError, OperandReader, WordWriter}; use crate::meta::{Category, OperandKind}; use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; @@ -66,7 +66,7 @@ unsafe impl OperandEncoding for LiteralString { if found_null_terminator { Ok(Self(String::from_utf8(bytes)?)) } else { - Err(DecodeError::StringNotNulTerminated) + Err(DecodeErrorKind::StringNotNulTerminated.into()) } } diff --git a/crates/rspirv2-types/src/operand/mod.rs b/crates/rspirv2-types/src/operand/mod.rs index 672a73e6..accd2609 100644 --- a/crates/rspirv2-types/src/operand/mod.rs +++ b/crates/rspirv2-types/src/operand/mod.rs @@ -4,7 +4,9 @@ mod literal_float; mod literal_integer; mod literal_string; -use crate::binary::{DecodeError, EncodeError, OperandReader, WordCounter, WordWriter}; +use crate::binary::{ + DecodeError, DecodeErrorKind, EncodeError, OperandReader, WordCounter, WordWriter, +}; use crate::dis::DisContext; use crate::meta::{OperandKind, Quantifier}; pub use id::*; @@ -259,10 +261,11 @@ unsafe impl OperandEncoding for Vec { let mut vec = if let Some(fixed_len) = T::FIXED_LEN { let remaining = reader.remaining(); if !remaining.is_multiple_of(fixed_len) { - return Err(DecodeError::InstructionWithMismatchedVariableOperants { + return Err(DecodeErrorKind::InstructionWithMismatchedVariableOperants { op_len: reader.remaining(), expected_multiple: fixed_len, - }); + } + .into()); } Vec::with_capacity(remaining / fixed_len) } else { @@ -310,10 +313,11 @@ unsafe impl OperandEncoding for SmallVec<[T; let mut vec = if let Some(fixed_len) = T::FIXED_LEN { let remaining = reader.remaining(); if !remaining.is_multiple_of(fixed_len) { - return Err(DecodeError::InstructionWithMismatchedVariableOperants { + return Err(DecodeErrorKind::InstructionWithMismatchedVariableOperants { op_len: reader.remaining(), expected_multiple: fixed_len, - }); + } + .into()); } SmallVec::with_capacity(remaining / fixed_len) } else { diff --git a/crates/rspirv2-types/src/slice.rs b/crates/rspirv2-types/src/slice.rs index ed23c5df..f2aa5df4 100644 --- a/crates/rspirv2-types/src/slice.rs +++ b/crates/rspirv2-types/src/slice.rs @@ -1,5 +1,5 @@ use crate::Word; -use crate::binary::{DecodeError, InstOffset, InstReader}; +use crate::binary::{DecodeError, DecodeErrorKind, InstOffset, InstReader}; use crate::dis::{DisInstSlice, InstSetDisCtx, IntoDisContext}; use crate::inst::{InstEncoding, InstRef}; use std::fmt::{Debug, Formatter}; @@ -356,7 +356,9 @@ impl<'a> Iterator for RawInstOffsetRefIter<'a> { *self.offset += inst_reader.len(); Some(Ok((old_offset, inst_reader))) } - Err(DecodeError::OutOfInstructions) => None, + Err(DecodeError { + kind: DecodeErrorKind::OutOfInstructions, + }) => None, Err(e) => { self.offset = InstOffset(!0); Some(Err(e)) diff --git a/crates/rspirv2/src/core/inst_set.rs b/crates/rspirv2/src/core/inst_set.rs index 6600b06a..2853ce60 100644 --- a/crates/rspirv2/src/core/inst_set.rs +++ b/crates/rspirv2/src/core/inst_set.rs @@ -6170,9 +6170,12 @@ impl InstEncoding for CoreInstSet { ) } _ => { - return Err(DecodeError::UnknownOpCode { - opcode, - }); + return Err( + DecodeErrorKind::UnknownOpCode { + opcode, + } + .into(), + ); } }, ) diff --git a/crates/rspirv2/src/core/operands.rs b/crates/rspirv2/src/core/operands.rs index 98486d8e..d4578be1 100644 --- a/crates/rspirv2/src/core/operands.rs +++ b/crates/rspirv2/src/core/operands.rs @@ -696,10 +696,11 @@ unsafe impl OperandEncoding for SourceLanguage { 12u32 => Self::Zig, 13u32 => Self::Rust, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(SourceLanguage), variant, - }); + } + .into()); } }) } @@ -778,10 +779,11 @@ unsafe impl OperandEncoding for ExecutionModel { 5364u32 => Self::TaskEXT, 5365u32 => Self::MeshEXT, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(ExecutionModel), variant, - }); + } + .into()); } }) } @@ -838,10 +840,11 @@ unsafe impl OperandEncoding for AddressingModel { 2u32 => Self::Physical64, 5348u32 => Self::PhysicalStorageBuffer64, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(AddressingModel), variant, - }); + } + .into()); } }) } @@ -885,10 +888,11 @@ unsafe impl OperandEncoding for MemoryModel { 2u32 => Self::OpenCL, 3u32 => Self::Vulkan, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(MemoryModel), variant, - }); + } + .into()); } }) } @@ -1548,10 +1552,11 @@ unsafe impl OperandEncoding for ExecutionMode { 6462u32 => Self::MaximumRegistersIdINTEL(OperandEncoding::decode(&mut *reader)?), 6463u32 => Self::NamedMaximumRegistersINTEL(OperandEncoding::decode(&mut *reader)?), _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(ExecutionMode), variant, - }); + } + .into()); } }) } @@ -1866,10 +1871,11 @@ unsafe impl OperandEncoding for StorageClass { 5936u32 => Self::DeviceOnlyALTERA, 5937u32 => Self::HostOnlyALTERA, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(StorageClass), variant, - }); + } + .into()); } }) } @@ -1945,10 +1951,11 @@ unsafe impl OperandEncoding for Dim { 6u32 => Self::SubpassData, 4173u32 => Self::TileImageDataEXT, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(Dim), variant, - }); + } + .into()); } }) } @@ -1997,10 +2004,11 @@ unsafe impl OperandEncoding for SamplerAddressingMode { 3u32 => Self::Repeat, 4u32 => Self::RepeatMirrored, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(SamplerAddressingMode), variant, - }); + } + .into()); } }) } @@ -2040,10 +2048,11 @@ unsafe impl OperandEncoding for SamplerFilterMode { 0u32 => Self::Nearest, 1u32 => Self::Linear, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(SamplerFilterMode), variant, - }); + } + .into()); } }) } @@ -2160,10 +2169,11 @@ unsafe impl OperandEncoding for ImageFormat { 40u32 => Self::R64ui, 41u32 => Self::R64i, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(ImageFormat), variant, - }); + } + .into()); } }) } @@ -2276,10 +2286,11 @@ unsafe impl OperandEncoding for ImageChannelOrder { 18u32 => Self::sBGRA, 19u32 => Self::ABGR, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(ImageChannelOrder), variant, - }); + } + .into()); } }) } @@ -2382,10 +2393,11 @@ unsafe impl OperandEncoding for ImageChannelDataType { 25u32 => Self::UnormInt12X4EXT, 26u32 => Self::UnormInt14X2EXT, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(ImageChannelDataType), variant, - }); + } + .into()); } }) } @@ -2450,10 +2462,11 @@ unsafe impl OperandEncoding for FPRoundingMode { 2u32 => Self::RTP, 3u32 => Self::RTN, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(FPRoundingMode), variant, - }); + } + .into()); } }) } @@ -2492,10 +2505,11 @@ unsafe impl OperandEncoding for FPDenormMode { 0u32 => Self::Preserve, 1u32 => Self::FlushToZero, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(FPDenormMode), variant, - }); + } + .into()); } }) } @@ -2544,10 +2558,11 @@ unsafe impl OperandEncoding for QuantizationModes { 6u32 => Self::RND_CONV, 7u32 => Self::RND_CONV_ODD, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(QuantizationModes), variant, - }); + } + .into()); } }) } @@ -2590,10 +2605,11 @@ unsafe impl OperandEncoding for FPOperationMode { 0u32 => Self::IEEE, 1u32 => Self::ALT, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(FPOperationMode), variant, - }); + } + .into()); } }) } @@ -2634,10 +2650,11 @@ unsafe impl OperandEncoding for OverflowModes { 2u32 => Self::SAT_ZERO, 3u32 => Self::SAT_SYM, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(OverflowModes), variant, - }); + } + .into()); } }) } @@ -2678,10 +2695,11 @@ unsafe impl OperandEncoding for LinkageType { 1u32 => Self::Import, 2u32 => Self::LinkOnceODR, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(LinkageType), variant, - }); + } + .into()); } }) } @@ -2721,10 +2739,11 @@ unsafe impl OperandEncoding for AccessQualifier { 1u32 => Self::WriteOnly, 2u32 => Self::ReadWrite, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(AccessQualifier), variant, - }); + } + .into()); } }) } @@ -2766,10 +2785,11 @@ unsafe impl OperandEncoding for HostAccessQualifier { 2u32 => Self::WriteINTEL, 3u32 => Self::ReadWriteINTEL, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(HostAccessQualifier), variant, - }); + } + .into()); } }) } @@ -2822,10 +2842,11 @@ unsafe impl OperandEncoding for FunctionParameterAttribute { 7u32 => Self::NoReadWrite, 5940u32 => Self::RuntimeAlignedALTERA, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(FunctionParameterAttribute), variant, - }); + } + .into()); } }) } @@ -3858,10 +3879,11 @@ unsafe impl OperandEncoding for Decoration { OperandEncoding::decode(&mut *reader)?, ), _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(Decoration), variant, - }); + } + .into()); } }) } @@ -4416,10 +4438,11 @@ unsafe impl OperandEncoding for BuiltIn { 5436u32 => Self::ClusterIDNV, 6021u32 => Self::CullMaskKHR, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(BuiltIn), variant, - }); + } + .into()); } }) } @@ -4609,10 +4632,11 @@ unsafe impl OperandEncoding for Scope { 5u32 => Self::QueueFamily, 6u32 => Self::ShaderCallKHR, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(Scope), variant, - }); + } + .into()); } }) } @@ -4665,10 +4689,11 @@ unsafe impl OperandEncoding for GroupOperation { 7u32 => Self::PartitionedInclusiveScanEXT, 8u32 => Self::PartitionedExclusiveScanEXT, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(GroupOperation), variant, - }); + } + .into()); } }) } @@ -4716,10 +4741,11 @@ unsafe impl OperandEncoding for KernelEnqueueFlags { 1u32 => Self::WaitKernel, 2u32 => Self::WaitWorkGroup, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(KernelEnqueueFlags), variant, - }); + } + .into()); } }) } @@ -5364,10 +5390,11 @@ unsafe impl OperandEncoding for Capability { 6460u32 => Self::RegisterLimitsINTEL, 6528u32 => Self::BindlessImagesINTEL, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(Capability), variant, - }); + } + .into()); } }) } @@ -5840,10 +5867,11 @@ unsafe impl OperandEncoding for RayQueryIntersection { 0u32 => Self::RayQueryCandidateIntersectionKHR, 1u32 => Self::RayQueryCommittedIntersectionKHR, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(RayQueryIntersection), variant, - }); + } + .into()); } }) } @@ -5886,10 +5914,11 @@ unsafe impl OperandEncoding for RayQueryCommittedIntersectionType { 1u32 => Self::RayQueryCommittedIntersectionTriangleKHR, 2u32 => Self::RayQueryCommittedIntersectionGeneratedKHR, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(RayQueryCommittedIntersectionType), variant, - }); + } + .into()); } }) } @@ -5933,10 +5962,11 @@ unsafe impl OperandEncoding for RayQueryCandidateIntersectionType { 0u32 => Self::RayQueryCandidateIntersectionTriangleKHR, 1u32 => Self::RayQueryCandidateIntersectionAABBKHR, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(RayQueryCandidateIntersectionType), variant, - }); + } + .into()); } }) } @@ -5976,10 +6006,11 @@ unsafe impl OperandEncoding for PackedVectorFormat { Ok(match variant { 0u32 => Self::PackedVectorFormat4x8Bit, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(PackedVectorFormat), variant, - }); + } + .into()); } }) } @@ -6068,10 +6099,11 @@ unsafe impl OperandEncoding for CooperativeMatrixLayout { 4202u32 => Self::RowBlockedInterleavedARM, 4203u32 => Self::ColumnBlockedInterleavedARM, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(CooperativeMatrixLayout), variant, - }); + } + .into()); } }) } @@ -6114,10 +6146,11 @@ unsafe impl OperandEncoding for CooperativeMatrixUse { 1u32 => Self::MatrixBKHR, 2u32 => Self::MatrixAccumulatorKHR, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(CooperativeMatrixUse), variant, - }); + } + .into()); } }) } @@ -6201,10 +6234,11 @@ unsafe impl OperandEncoding for TensorClampMode { 3u32 => Self::Repeat, 4u32 => Self::RepeatMirrored, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(TensorClampMode), variant, - }); + } + .into()); } }) } @@ -6282,10 +6316,11 @@ unsafe impl OperandEncoding for InitializationModeQualifier { 0u32 => Self::InitOnDeviceReprogramALTERA, 1u32 => Self::InitOnDeviceResetALTERA, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(InitializationModeQualifier), variant, - }); + } + .into()); } }) } @@ -6330,10 +6365,11 @@ unsafe impl OperandEncoding for LoadCacheControl { 3u32 => Self::InvalidateAfterReadINTEL, 4u32 => Self::ConstCachedINTEL, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(LoadCacheControl), variant, - }); + } + .into()); } }) } @@ -6377,10 +6413,11 @@ unsafe impl OperandEncoding for StoreCacheControl { 2u32 => Self::WriteBackINTEL, 3u32 => Self::StreamingINTEL, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(StoreCacheControl), variant, - }); + } + .into()); } }) } @@ -6417,10 +6454,11 @@ unsafe impl OperandEncoding for NamedMaximumNumberOfRegisters { Ok(match variant { 0u32 => Self::AutoINTEL, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(NamedMaximumNumberOfRegisters), variant, - }); + } + .into()); } }) } @@ -6537,10 +6575,11 @@ unsafe impl OperandEncoding for FPEncoding { 4214u32 => Self::Float8E4M3EXT, 4215u32 => Self::Float8E5M2EXT, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(FPEncoding), variant, - }); + } + .into()); } }) } @@ -6582,10 +6621,11 @@ unsafe impl OperandEncoding for CooperativeVectorMatrixLayout { 2u32 => Self::InferencingOptimalNV, 3u32 => Self::TrainingOptimalNV, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(CooperativeVectorMatrixLayout), variant, - }); + } + .into()); } }) } @@ -6650,10 +6690,11 @@ unsafe impl OperandEncoding for ComponentType { 1000491002u32 => Self::FloatE4M3NV, 1000491003u32 => Self::FloatE5M2NV, _ => { - return Err(DecodeError::UnknownEnumVariant { + return Err(DecodeErrorKind::UnknownEnumVariant { name: stringify!(ComponentType), variant, - }); + } + .into()); } }) } diff --git a/crates/rspirv2/src/debug_printf/inst_set.rs b/crates/rspirv2/src/debug_printf/inst_set.rs index 970770bd..4025445e 100644 --- a/crates/rspirv2/src/debug_printf/inst_set.rs +++ b/crates/rspirv2/src/debug_printf/inst_set.rs @@ -17,7 +17,7 @@ impl InstEncoding for DebugPrintfInstSet { Ok(match opcode { 1u16 => Self::DebugPrintf(::decode(reader)?), _ => { - return Err(DecodeError::UnknownOpCode { opcode }); + return Err(DecodeErrorKind::UnknownOpCode { opcode }.into()); } }) } diff --git a/crates/rspirv2/src/glsl_std_450/inst_set.rs b/crates/rspirv2/src/glsl_std_450/inst_set.rs index 9c423e0f..60af70b6 100644 --- a/crates/rspirv2/src/glsl_std_450/inst_set.rs +++ b/crates/rspirv2/src/glsl_std_450/inst_set.rs @@ -263,7 +263,7 @@ impl InstEncoding for GlslInstSet { 80u16 => Self::NMax(::decode(reader)?), 81u16 => Self::NClamp(::decode(reader)?), _ => { - return Err(DecodeError::UnknownOpCode { opcode }); + return Err(DecodeErrorKind::UnknownOpCode { opcode }.into()); } }) } From 901a61eb7b4163523d91b6918b86474fa232164b Mon Sep 17 00:00:00 2001 From: firestar99 Date: Fri, 27 Mar 2026 11:47:16 +0100 Subject: [PATCH 09/12] dis ctx: add `inst_offset` to `DecodeError` to detail error messages with offsets --- crates/rspirv2-types/src/binary/decode_error.rs | 16 +++++++++++++++- crates/rspirv2-types/src/inst.rs | 1 + crates/rspirv2-types/src/slice.rs | 3 ++- crates/rspirv2/tests/dis_invalid_inst.rs | 6 +++--- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/crates/rspirv2-types/src/binary/decode_error.rs b/crates/rspirv2-types/src/binary/decode_error.rs index d6f13790..6d4e1298 100644 --- a/crates/rspirv2-types/src/binary/decode_error.rs +++ b/crates/rspirv2-types/src/binary/decode_error.rs @@ -1,3 +1,4 @@ +use crate::binary::InstOffset; use bitflags::Flags; use std::error::Error; use std::ffi::FromBytesUntilNulError; @@ -150,12 +151,22 @@ impl Error for DecodeErrorKind {} #[derive(Clone, PartialEq)] pub struct DecodeError { pub kind: DecodeErrorKind, + pub inst_offset: Option, } impl DecodeError { #[inline] pub fn new(kind: DecodeErrorKind) -> Self { - Self { kind } + Self { + kind, + inst_offset: None, + } + } + + #[inline] + pub fn with_inst_offset(mut self, offset: impl Into>) -> Self { + self.inst_offset = offset.into(); + self } #[inline] @@ -194,6 +205,9 @@ impl From for DecodeError { impl Display for DecodeError { fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + if let Some(inst_offset) = self.inst_offset { + write!(f, "Instruction at offset {inst_offset}: ")?; + } write!(f, "{}", self.kind) } } diff --git a/crates/rspirv2-types/src/inst.rs b/crates/rspirv2-types/src/inst.rs index d7b2abe0..d29d69e0 100644 --- a/crates/rspirv2-types/src/inst.rs +++ b/crates/rspirv2-types/src/inst.rs @@ -42,6 +42,7 @@ pub trait InstEncoding: Sized + Debug + Eq { Ok(e) => Ok(Some(e)), Err(DecodeError { kind: DecodeErrorKind::WrongOpCode { .. } | DecodeErrorKind::UnknownOpCode { .. }, + .. }) => Ok(None), Err(e) => Err(e), } diff --git a/crates/rspirv2-types/src/slice.rs b/crates/rspirv2-types/src/slice.rs index f2aa5df4..194b2c4b 100644 --- a/crates/rspirv2-types/src/slice.rs +++ b/crates/rspirv2-types/src/slice.rs @@ -358,10 +358,11 @@ impl<'a> Iterator for RawInstOffsetRefIter<'a> { } Err(DecodeError { kind: DecodeErrorKind::OutOfInstructions, + .. }) => None, Err(e) => { self.offset = InstOffset(!0); - Some(Err(e)) + Some(Err(e.with_inst_offset(old_offset))) } } } else { diff --git a/crates/rspirv2/tests/dis_invalid_inst.rs b/crates/rspirv2/tests/dis_invalid_inst.rs index 665df78b..65c3ed66 100644 --- a/crates/rspirv2/tests/dis_invalid_inst.rs +++ b/crates/rspirv2/tests/dis_invalid_inst.rs @@ -96,7 +96,7 @@ fn test_zero_len_op() { expect![[r#" %42 = OpTypeInt 32 0 OpName %69 "abc" - Error: Instruction has an invalid length of 0, must be least 1 word as it includes the opcode itself. + Error: Instruction at offset 7: Instruction has an invalid length of 0, must be least 1 word as it includes the opcode itself. "#]] .assert_eq(&dis(RawInstSlice::from_words(&words))); } @@ -126,7 +126,7 @@ fn test_too_long_op() { words[str_offset - 2] = Word::new_op(OpName::META.opcode, 0xDEAD).unwrap(); expect![[r#" %42 = OpTypeInt 32 0 - Error: Instruction has a supposed length of 57005 but the module only has 8 words remaining. + Error: Instruction at offset 4: Instruction has a supposed length of 57005 but the module only has 8 words remaining. "#]] .assert_eq(&dis(RawInstSlice::from_words(&words))); } @@ -146,7 +146,7 @@ fn test_op_shorter_than_string() { %42 = OpTypeInt 32 0 Error: String is not null-terminated. Error: Instruction Set couldn't decode instruction with unknown opcode 26213 - Error: Instruction has an invalid length of 0, must be least 1 word as it includes the opcode itself. + Error: Instruction at offset 9: Instruction has an invalid length of 0, must be least 1 word as it includes the opcode itself. "#]] .assert_eq(&dis(RawInstSlice::from_words(&words))); } From a40cabf1458bad49af624d8fed70ba67689b1efe Mon Sep 17 00:00:00 2001 From: firestar99 Date: Fri, 27 Mar 2026 14:31:52 +0100 Subject: [PATCH 10/12] dis ctx: add `IdResult` naming derived from `OpName`, `OpType*` and `OpConstant` --- crates/rspirv2-types/src/dis.rs | 123 ++++++++++++ crates/rspirv2-types/src/operand/id.rs | 3 +- .../src/operand/literal_const.rs | 45 +++-- crates/rspirv2/src/dis.rs | 181 +++++++++++++++++- spv/dis_reference.rspirv2 | 130 ++++++------- spv/dis_reference.spirv_tools_like | 130 ++++++------- 6 files changed, 459 insertions(+), 153 deletions(-) diff --git a/crates/rspirv2-types/src/dis.rs b/crates/rspirv2-types/src/dis.rs index 998d9b0e..cd84d1a0 100644 --- a/crates/rspirv2-types/src/dis.rs +++ b/crates/rspirv2-types/src/dis.rs @@ -6,6 +6,7 @@ use crate::slice::{InstSlice, RawInstSlice}; use anstyle::Style; use rustc_hash::FxHashMap; use std::cell::Cell; +use std::collections::hash_map::Entry; use std::fmt::{Display, Formatter}; use std::marker::PhantomData; use std::ops::{Deref, DerefMut}; @@ -24,6 +25,37 @@ pub struct DisOptions { /// /// **REQUIRED** for correct disassembly pub const_fmt: bool, + /// Defines whether to use raw ids (`%53`) or named ids (`%my_name`) resolved from `OpName` descriptors or other + /// sources of metadata. See [`IdNaming`]. + pub id_naming: IdNaming, + /// How to derive names for types + pub type_naming: TypeNaming, +} + +/// Defines where names of types should be derived from. +#[derive(Copy, Clone, Debug, Eq, PartialEq)] +pub enum IdNaming { + /// Only use raw ids (`%53`) + RawId, + /// Only use names for explicitly named types (`OpName`) + ExplicitNames, + /// Use names from both explicit naming (`OpName`) and other sources of metadata. + /// + /// Typical sources of names, besides `OpName`: + /// * `OpType*`: `%u32 = OpTypeInt 32 0` + /// * `OpConstant`: `%u32_42 = OpConstant %u32 42` + All, +} + +/// Defines how to derive names for types +#[derive(Copy, Clone, Debug, Eq, PartialEq)] +pub enum TypeNaming { + /// Rust naming conventions, eg. `u32`, `i32`, `f32` + Rust, + /// C naming conventions, eg. `uint`, `int`, `float` + /// + /// should match spirv-dis + C, } impl Default for DisOptions { @@ -34,6 +66,8 @@ impl Default for DisOptions { literal_string_escape: LiteralStringEscape::default(), rspirv_space: false, const_fmt: true, + id_naming: IdNaming::All, + type_naming: TypeNaming::Rust, } } } @@ -54,6 +88,8 @@ impl DisOptions { literal_string_escape: LiteralStringEscape::EscapeNewlines, rspirv_space: true, const_fmt: true, + id_naming: IdNaming::RawId, + type_naming: TypeNaming::Rust, } } @@ -64,6 +100,8 @@ impl DisOptions { literal_string_escape: LiteralStringEscape::MultiLine, rspirv_space: false, const_fmt: true, + id_naming: IdNaming::All, + type_naming: TypeNaming::C, } } @@ -98,6 +136,34 @@ pub struct DisContext { /// Maps an [`IdResult`] of a type declaration to a [`ConstFmt`] to tell `OpConstant` instructions how to format /// the untyped constant value pub id_to_const_fmt: FxHashMap, + /// Maps an [`IdResult`] to the "highest priority" [`IdName`] + pub id_to_name: FxHashMap, +} + +#[derive(Clone, Debug, Default)] +pub enum IdName { + /// Use the raw id + #[default] + RawId, + /// Use this explicitly assigned name, has priority over [`Self::DerivedName`] + ExplicitName(String), + /// Derived name from the definition of the id + DerivedName(String), +} + +#[derive(Copy, Clone, Debug)] +pub enum ResolvedIdName<'a> { + Named(&'a str), + Raw(IdResult), +} + +impl Display for ResolvedIdName<'_> { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + match self { + ResolvedIdName::Named(name) => write!(f, "{name}"), + ResolvedIdName::Raw(id) => write!(f, "{}", id.0.0), + } + } } impl DisContext { @@ -113,6 +179,45 @@ impl DisContext { ISA::add_context(slice, self); } + /// Add a mapping from an [`IdResult`] to an [`IdName`] + pub fn add_id_to_name(&mut self, id: IdResult, name: IdName) { + // In the name of Hades, I accept this message! + #[allow(clippy::match_same_arms)] + let accept = match (self.opt.id_naming, &name) { + // no need to store anything, default is `RawId` + (_, IdName::RawId) => false, + (IdNaming::RawId, _) => false, + + (IdNaming::All, _) => true, + (IdNaming::ExplicitNames, IdName::ExplicitName(..)) => true, + (IdNaming::ExplicitNames, IdName::DerivedName(..)) => false, + }; + if accept { + match self.id_to_name.entry(id) { + Entry::Occupied(mut slot) => { + let overwrite = match (&name, slot.get()) { + // don't overwrite an explicit name + (IdName::DerivedName(..), IdName::ExplicitName(..)) => false, + (_, _) => true, + }; + if overwrite { + slot.insert(name); + } + } + Entry::Vacant(slot) => { + slot.insert(name); + } + } + } + } + + pub fn id_to_name(&self, id: IdResult) -> ResolvedIdName<'_> { + match self.id_to_name.get(&id).unwrap_or(&IdName::RawId) { + IdName::RawId => ResolvedIdName::Raw(id), + IdName::ExplicitName(name) | IdName::DerivedName(name) => ResolvedIdName::Named(name), + } + } + /// Creates a new [`DisContext`] without having scanned the module for the required extra information. /// /// **WARNING**: You need to [`Self::add_context`] the instructions you want to decode before disassembling, @@ -211,6 +316,24 @@ impl<'a, ISA: InstSetDisCtx> Display for DisInstSlice<'a, ISA> { } } +#[allow(clippy::match_same_arms)] +pub fn escape_id_name(str: &str) -> Option { + let escaped = str + .chars() + .map(|c| match c { + 'A'..='Z' => c, + 'a'..='z' => c, + '0'..='9' => c, + _ => '_', + }) + .collect::(); + if escaped.chars().all(|c| c == ' ') { + None + } else { + Some(escaped) + } +} + /// Utility struct for inserting separators between variants. Use it like `format!({sep}{value})`, will skip the /// separator on first write. /// diff --git a/crates/rspirv2-types/src/operand/id.rs b/crates/rspirv2-types/src/operand/id.rs index e4c88c9e..10942467 100644 --- a/crates/rspirv2-types/src/operand/id.rs +++ b/crates/rspirv2-types/src/operand/id.rs @@ -88,7 +88,8 @@ impl IdResult { ) -> std::fmt::Result { let style = ctx.color(style); let prepend_space = if prepend_space { " " } else { "" }; - write!(f, "{prepend_space}{style}%{}{style:#}", self.0.0) + let name = ctx.id_to_name(*self); + write!(f, "{prepend_space}{style}%{name}{style:#}") } } diff --git a/crates/rspirv2-types/src/operand/literal_const.rs b/crates/rspirv2-types/src/operand/literal_const.rs index 19a550fb..6b9565b8 100644 --- a/crates/rspirv2-types/src/operand/literal_const.rs +++ b/crates/rspirv2-types/src/operand/literal_const.rs @@ -4,7 +4,7 @@ use crate::meta::{Category, OperandKind}; use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; use smallvec::SmallVec; -use std::fmt::Formatter; +use std::fmt::{Display, Formatter}; pub const OPERAND_KIND_LITERAL_CONTEXT_DEPENDENT_NUMBER: OperandKind = OperandKind { name: "LiteralContextDependentNumber", @@ -184,23 +184,38 @@ unsafe impl OperandEncoding for LiteralConst { #[inline] fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { let color = ctx.color(AnsiColor::Red.on_default()); - let fmt = ctx + write!(f, " {color}{}{color:#}", self.fmt_value(ctx)) + } +} + +impl LiteralConst { + pub fn fmt_value<'a>(&'a self, ctx: &'a OperandDisContext<'a>) -> FormattedValue<'a> { + FormattedValue(self, ctx) + } +} + +pub struct FormattedValue<'a>(&'a LiteralConst, &'a OperandDisContext<'a>); + +impl Display for FormattedValue<'_> { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + let fmt = self + .1 .id_result_type - .and_then(|ty| ctx.id_to_const_fmt.get(&ty.0)) + .and_then(|ty| self.1.id_to_const_fmt.get(&ty.0)) .copied() .unwrap_or_default(); - match (self.0.len(), fmt) { - (1, ConstFmt::Unsigned) => write!(f, " {color}{}{color:#}", self.as_u32().unwrap()), - (2, ConstFmt::Unsigned) => write!(f, " {color}{}{color:#}", self.as_u64().unwrap()), - (1, ConstFmt::Signed) => write!(f, " {color}{}{color:#}", self.as_i32().unwrap()), - (2, ConstFmt::Signed) => write!(f, " {color}{}{color:#}", self.as_i64().unwrap()), - (1, ConstFmt::LowerHex) => write!(f, " {color}{:x}{color:#}", self.as_u32().unwrap()), - (2, ConstFmt::LowerHex) => write!(f, " {color}{:x}{color:#}", self.as_u64().unwrap()), - (1, ConstFmt::UpperHex) => write!(f, " {color}{:X}{color:#}", self.as_u32().unwrap()), - (2, ConstFmt::UpperHex) => write!(f, " {color}{:X}{color:#}", self.as_u64().unwrap()), - (1, ConstFmt::Float) => write!(f, " {color}{}{color:#}", self.as_f32().unwrap()), - (2, ConstFmt::Float) => write!(f, " {color}{}{color:#}", self.as_f64().unwrap()), - (_, _) => write!(f, " {color}{:?}{color:#}", self.0.as_slice()), + match (self.0.0.len(), fmt) { + (1, ConstFmt::Unsigned) => write!(f, "{}", self.0.as_u32().unwrap()), + (2, ConstFmt::Unsigned) => write!(f, "{}", self.0.as_u64().unwrap()), + (1, ConstFmt::Signed) => write!(f, "{}", self.0.as_i32().unwrap()), + (2, ConstFmt::Signed) => write!(f, "{}", self.0.as_i64().unwrap()), + (1, ConstFmt::LowerHex) => write!(f, "{:x}", self.0.as_u32().unwrap()), + (2, ConstFmt::LowerHex) => write!(f, "{:x}", self.0.as_u64().unwrap()), + (1, ConstFmt::UpperHex) => write!(f, "{:X}", self.0.as_u32().unwrap()), + (2, ConstFmt::UpperHex) => write!(f, "{:X}", self.0.as_u64().unwrap()), + (1, ConstFmt::Float) => write!(f, "{}", self.0.as_f32().unwrap()), + (2, ConstFmt::Float) => write!(f, "{}", self.0.as_f64().unwrap()), + (_, _) => write!(f, "{:?}", self.0.0.as_slice()), } } } diff --git a/crates/rspirv2/src/dis.rs b/crates/rspirv2/src/dis.rs index 8ebb6723..43f0fe5d 100644 --- a/crates/rspirv2/src/dis.rs +++ b/crates/rspirv2/src/dis.rs @@ -1,20 +1,40 @@ +use crate::core::inst::{ + OpConstant, OpConstantFalse, OpConstantNull, OpConstantTrue, OpTypeBool, OpTypeFloat, + OpTypeInt, OpTypePointer, OpTypeStruct, OpTypeVector, OpTypeVoid, +}; use crate::core::inst_set::CoreInstSet; -use crate::core::inst_set::CoreInstSet::{TypeFloat, TypeInt}; +use crate::core::preamble::OpTypeRuntimeArray; pub use rspirv2_types::dis::*; -use rspirv2_types::operand::ConstFmt; +use rspirv2_types::operand::{ConstFmt, OperandDisContext}; use rspirv2_types::slice::{RawInstSlice, SkipDecodeErrorIteratorExt, TryDecodeIteratorExt}; impl InstSetDisCtx for CoreInstSet { fn add_context(slice: &RawInstSlice, ctx: &mut DisContext) { for inst in slice.iter().try_decode::().skip_errors() { match inst { - TypeFloat(inst) => { - ctx.id_to_const_fmt - .insert(inst.id_result.unwrap(), ConstFmt::Float); + Self::Name(inst) => { + if let Some(name) = escape_id_name(&inst.name.0) { + ctx.add_id_to_name(inst.target.0, IdName::ExplicitName(name)); + } } - TypeInt(inst) => { + Self::TypeVoid(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::TypeBool(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::TypeFloat(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + ctx.id_to_const_fmt.insert(def, ConstFmt::Float); + } + Self::TypeInt(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); ctx.id_to_const_fmt.insert( - inst.id_result.unwrap(), + def, if inst.signedness.to_bool() { ConstFmt::Signed } else { @@ -22,8 +42,155 @@ impl InstSetDisCtx for CoreInstSet { }, ); } + Self::TypeVector(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::TypeRuntimeArray(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::TypePointer(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::TypeStruct(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::Constant(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::ConstantNull(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::ConstantFalse(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } + Self::ConstantTrue(inst) => { + let def = inst.id_result.unwrap(); + ctx.add_id_to_name(def, inst.derive_name(ctx)); + } _ => {} } } } } + +impl OpTypeVoid { + pub fn derive_name(&self, _ctx: &DisContext) -> IdName { + IdName::DerivedName("void".to_string()) + } +} + +impl OpTypeBool { + pub fn derive_name(&self, _ctx: &DisContext) -> IdName { + IdName::DerivedName("bool".to_string()) + } +} + +impl OpTypeInt { + pub fn derive_name(&self, ctx: &DisContext) -> IdName { + let signed = self.signedness.to_bool(); + let width = self.width.to_u32(); + IdName::DerivedName(match ctx.type_naming { + TypeNaming::Rust => { + format!("{}{width}", if signed { "i" } else { "u" }) + } + TypeNaming::C => match (signed, width) { + (false, 32) => "uint".to_string(), + (true, 32) => "int".to_string(), + (false, _) => format!("uint{width}_t"), + (true, _) => format!("int{width}_t"), + }, + }) + } +} + +impl OpTypeFloat { + pub fn derive_name(&self, ctx: &DisContext) -> IdName { + let width = self.width.to_u32(); + IdName::DerivedName(match ctx.type_naming { + TypeNaming::Rust => { + format!("f{width}") + } + TypeNaming::C => match width { + 32 => "float".to_string(), + 64 => "double".to_string(), + _ => format!("float{width}_t"), + }, + }) + } +} + +impl OpTypeVector { + pub fn derive_name(&self, ctx: &DisContext) -> IdName { + let ty_name = ctx.id_to_name(self.component_type.0); + let count = self.component_count.to_u32(); + IdName::DerivedName(format!("v{count}{ty_name}")) + } +} + +impl OpTypeRuntimeArray { + pub fn derive_name(&self, ctx: &DisContext) -> IdName { + let ty_name = ctx.id_to_name(self.element_type.0); + IdName::DerivedName(format!("_runtimearr_{ty_name}")) + } +} + +impl OpTypePointer { + pub fn derive_name(&self, ctx: &DisContext) -> IdName { + let ty_name = ctx.id_to_name(self.ty.0); + let storage_class = self.storage_class; + IdName::DerivedName(format!("_ptr_{storage_class:?}_{ty_name}")) + } +} + +impl OpTypeStruct { + pub fn derive_name(&self, _ctx: &DisContext) -> IdName { + IdName::DerivedName(format!("_struct_{}", self.id_result.unwrap().0.0)) + } +} + +impl OpConstant { + pub fn derive_name(&self, ctx: &DisContext) -> IdName { + let ty_name = ctx.id_to_name(self.id_result_type.0); + let operand_ctx = OperandDisContext { + ctx, + id_result: self.id_result, + id_result_type: Some(self.id_result_type), + }; + let value = self.value.fmt_value(&operand_ctx).to_string(); + let value = value + .chars() + .map(|c| match c { + '0'..='9' => c, + '-' => 'n', + _ => '_', + }) + .collect::(); + IdName::DerivedName(format!("{ty_name}_{value}")) + } +} + +impl OpConstantNull { + pub fn derive_name(&self, ctx: &DisContext) -> IdName { + let ty_name = ctx.id_to_name(self.id_result_type.0); + IdName::DerivedName(format!("{ty_name}_0")) + } +} + +impl OpConstantFalse { + pub fn derive_name(&self, _ctx: &DisContext) -> IdName { + IdName::DerivedName("bool_false".to_string()) + } +} + +impl OpConstantTrue { + pub fn derive_name(&self, _ctx: &DisContext) -> IdName { + IdName::DerivedName("bool_true".to_string()) + } +} diff --git a/spv/dis_reference.rspirv2 b/spv/dis_reference.rspirv2 index a3b2a775..e46f9d88 100644 --- a/spv/dis_reference.rspirv2 +++ b/spv/dis_reference.rspirv2 @@ -2,7 +2,7 @@ OpCapability Shader OpCapability StorageImageWriteWithoutFormat OpCapability VulkanMemoryModel OpMemoryModel Logical Vulkan -OpEntryPoint GLCompute %1 "main" %2 %3 %4 +OpEntryPoint GLCompute %1 "main" %tid %offset_buffer %output_buffer OpExecutionMode %1 LocalSize 32 1 1 %5 = OpString "ui/dis_reference.rs" OpSource Unknown 0 %5 "// compile-flags: -C target-feature=+StorageImageWriteWithoutFormat @@ -75,61 +75,61 @@ pub unsafe fn atomic_i_add( } } " -OpName %2 "tid" -OpName %3 "offset_buffer" -OpName %4 "output_buffer" -OpName %6 "dis_reference::compute_offset" -OpDecorate %7 ArrayStride 4 -OpDecorate %8 Block -OpMemberDecorate %8 0 Offset 0 -OpDecorate %9 Block -OpMemberDecorate %9 0 Offset 0 -OpDecorate %2 BuiltIn LocalInvocationId -OpDecorate %3 NonWritable -OpDecorate %3 Binding 42 -OpDecorate %3 DescriptorSet 0 -OpDecorate %4 Binding 69 -OpDecorate %4 DescriptorSet 1 -%10 = OpTypeInt 32 0 -%11 = OpTypeVector %10 3 -%12 = OpTypePointer Input %11 -%7 = OpTypeRuntimeArray %10 -%8 = OpTypeStruct %7 -%13 = OpTypePointer StorageBuffer %8 -%9 = OpTypeStruct %10 -%14 = OpTypePointer StorageBuffer %9 -%15 = OpTypeFloat 32 -%16 = OpTypeVoid -%17 = OpTypeFunction %16 -%2 = OpVariable %12 Input -%18 = OpTypePointer StorageBuffer %7 -%3 = OpVariable %13 StorageBuffer -%19 = OpConstant %10 0 -%20 = OpTypePointer StorageBuffer %10 -%4 = OpVariable %14 StorageBuffer -%21 = OpTypeFunction %10 %10 -%22 = OpConstant %10 1 -%23 = OpTypeBool -%24 = OpConstant %15 1.7 -%25 = OpConstant %10 1333788671 -%26 = OpConstant %10 4294967295 -%27 = OpConstant %10 5 -%28 = OpConstant %10 25096 -%1 = OpFunction %16 None %17 +OpName %tid "tid" +OpName %offset_buffer "offset_buffer" +OpName %output_buffer "output_buffer" +OpName %dis_reference__compute_offset "dis_reference::compute_offset" +OpDecorate %_runtimearr_u32 ArrayStride 4 +OpDecorate %_struct_8 Block +OpMemberDecorate %_struct_8 0 Offset 0 +OpDecorate %_struct_9 Block +OpMemberDecorate %_struct_9 0 Offset 0 +OpDecorate %tid BuiltIn LocalInvocationId +OpDecorate %offset_buffer NonWritable +OpDecorate %offset_buffer Binding 42 +OpDecorate %offset_buffer DescriptorSet 0 +OpDecorate %output_buffer Binding 69 +OpDecorate %output_buffer DescriptorSet 1 +%u32 = OpTypeInt 32 0 +%v3u32 = OpTypeVector %u32 3 +%_ptr_Input_v3u32 = OpTypePointer Input %v3u32 +%_runtimearr_u32 = OpTypeRuntimeArray %u32 +%_struct_8 = OpTypeStruct %_runtimearr_u32 +%_ptr_StorageBuffer__struct_8 = OpTypePointer StorageBuffer %_struct_8 +%_struct_9 = OpTypeStruct %u32 +%_ptr_StorageBuffer__struct_9 = OpTypePointer StorageBuffer %_struct_9 +%f32 = OpTypeFloat 32 +%void = OpTypeVoid +%17 = OpTypeFunction %void +%tid = OpVariable %_ptr_Input_v3u32 Input +%_ptr_StorageBuffer__runtimearr_u32 = OpTypePointer StorageBuffer %_runtimearr_u32 +%offset_buffer = OpVariable %_ptr_StorageBuffer__struct_8 StorageBuffer +%u32_0 = OpConstant %u32 0 +%_ptr_StorageBuffer_u32 = OpTypePointer StorageBuffer %u32 +%output_buffer = OpVariable %_ptr_StorageBuffer__struct_9 StorageBuffer +%21 = OpTypeFunction %u32 %u32 +%u32_1 = OpConstant %u32 1 +%bool = OpTypeBool +%f32_1_7 = OpConstant %f32 1.7 +%u32_1333788671 = OpConstant %u32 1333788671 +%u32_4294967295 = OpConstant %u32 4294967295 +%u32_5 = OpConstant %u32 5 +%u32_25096 = OpConstant %u32 25096 +%1 = OpFunction %void None %17 %29 = OpLabel OpLine %5 24 4 -%30 = OpLoad %11 %2 +%30 = OpLoad %v3u32 %tid OpLine %5 25 4 -%31 = OpInBoundsAccessChain %18 %3 %19 -%32 = OpArrayLength %10 %3 0 +%31 = OpInBoundsAccessChain %_ptr_StorageBuffer__runtimearr_u32 %offset_buffer %u32_0 +%32 = OpArrayLength %u32 %offset_buffer 0 OpLine %5 26 4 -%33 = OpInBoundsAccessChain %20 %4 %19 +%33 = OpInBoundsAccessChain %_ptr_StorageBuffer_u32 %output_buffer %u32_0 OpLine %5 30 36 -%34 = OpCompositeExtract %10 %30 0 +%34 = OpCompositeExtract %u32 %30 0 OpLine %5 30 21 -%35 = OpFunctionCall %10 %6 %34 +%35 = OpFunctionCall %u32 %dis_reference__compute_offset %34 OpLine %5 31 26 -%36 = OpULessThan %23 %35 %32 +%36 = OpULessThan %bool %35 %32 OpNoLine OpSelectionMerge %37 None OpBranchConditional %36 %38 %39 @@ -139,30 +139,30 @@ OpBranch %37 OpReturn %37 = OpLabel OpLine %5 31 26 -%40 = OpIAdd %10 %19 %35 -%41 = OpInBoundsAccessChain %20 %31 %40 -%42 = OpLoad %10 %41 +%40 = OpIAdd %u32 %u32_0 %35 +%41 = OpInBoundsAccessChain %_ptr_StorageBuffer_u32 %31 %40 +%42 = OpLoad %u32 %41 OpLine %5 32 21 -%43 = OpConvertUToF %15 %42 +%43 = OpConvertUToF %f32 %42 OpLine %5 32 20 -%44 = OpFMul %15 %43 %24 -%45 = OpBitcast %15 %19 -%46 = OpBitcast %15 %25 -%47 = OpConvertFToU %10 %44 -%48 = OpFUnordLessThan %23 %44 %45 -%49 = OpFOrdGreaterThan %23 %44 %46 -%50 = OpSelect %10 %48 %19 %47 -%51 = OpSelect %10 %49 %26 %50 +%44 = OpFMul %f32 %43 %f32_1_7 +%45 = OpBitcast %f32 %u32_0 +%46 = OpBitcast %f32 %u32_1333788671 +%47 = OpConvertFToU %u32 %44 +%48 = OpFUnordLessThan %bool %44 %45 +%49 = OpFOrdGreaterThan %bool %44 %46 +%50 = OpSelect %u32 %48 %u32_0 %47 +%51 = OpSelect %u32 %49 %u32_4294967295 %50 OpLine %5 59 13 -%52 = OpAtomicIAdd %10 %33 %27 %28 %51 +%52 = OpAtomicIAdd %u32 %33 %u32_5 %u32_25096 %51 OpNoLine OpReturn OpFunctionEnd -%6 = OpFunction %10 DontInline|Const %21 -%53 = OpFunctionParameter %10 +%dis_reference__compute_offset = OpFunction %u32 DontInline|Const %21 +%53 = OpFunctionParameter %u32 %54 = OpLabel OpLine %5 43 4 -%55 = OpIAdd %10 %22 %53 +%55 = OpIAdd %u32 %u32_1 %53 OpNoLine OpReturnValue %55 OpFunctionEnd diff --git a/spv/dis_reference.spirv_tools_like b/spv/dis_reference.spirv_tools_like index a3b2a775..363c3e77 100644 --- a/spv/dis_reference.spirv_tools_like +++ b/spv/dis_reference.spirv_tools_like @@ -2,7 +2,7 @@ OpCapability Shader OpCapability StorageImageWriteWithoutFormat OpCapability VulkanMemoryModel OpMemoryModel Logical Vulkan -OpEntryPoint GLCompute %1 "main" %2 %3 %4 +OpEntryPoint GLCompute %1 "main" %tid %offset_buffer %output_buffer OpExecutionMode %1 LocalSize 32 1 1 %5 = OpString "ui/dis_reference.rs" OpSource Unknown 0 %5 "// compile-flags: -C target-feature=+StorageImageWriteWithoutFormat @@ -75,61 +75,61 @@ pub unsafe fn atomic_i_add( } } " -OpName %2 "tid" -OpName %3 "offset_buffer" -OpName %4 "output_buffer" -OpName %6 "dis_reference::compute_offset" -OpDecorate %7 ArrayStride 4 -OpDecorate %8 Block -OpMemberDecorate %8 0 Offset 0 -OpDecorate %9 Block -OpMemberDecorate %9 0 Offset 0 -OpDecorate %2 BuiltIn LocalInvocationId -OpDecorate %3 NonWritable -OpDecorate %3 Binding 42 -OpDecorate %3 DescriptorSet 0 -OpDecorate %4 Binding 69 -OpDecorate %4 DescriptorSet 1 -%10 = OpTypeInt 32 0 -%11 = OpTypeVector %10 3 -%12 = OpTypePointer Input %11 -%7 = OpTypeRuntimeArray %10 -%8 = OpTypeStruct %7 -%13 = OpTypePointer StorageBuffer %8 -%9 = OpTypeStruct %10 -%14 = OpTypePointer StorageBuffer %9 -%15 = OpTypeFloat 32 -%16 = OpTypeVoid -%17 = OpTypeFunction %16 -%2 = OpVariable %12 Input -%18 = OpTypePointer StorageBuffer %7 -%3 = OpVariable %13 StorageBuffer -%19 = OpConstant %10 0 -%20 = OpTypePointer StorageBuffer %10 -%4 = OpVariable %14 StorageBuffer -%21 = OpTypeFunction %10 %10 -%22 = OpConstant %10 1 -%23 = OpTypeBool -%24 = OpConstant %15 1.7 -%25 = OpConstant %10 1333788671 -%26 = OpConstant %10 4294967295 -%27 = OpConstant %10 5 -%28 = OpConstant %10 25096 -%1 = OpFunction %16 None %17 +OpName %tid "tid" +OpName %offset_buffer "offset_buffer" +OpName %output_buffer "output_buffer" +OpName %dis_reference__compute_offset "dis_reference::compute_offset" +OpDecorate %_runtimearr_uint ArrayStride 4 +OpDecorate %_struct_8 Block +OpMemberDecorate %_struct_8 0 Offset 0 +OpDecorate %_struct_9 Block +OpMemberDecorate %_struct_9 0 Offset 0 +OpDecorate %tid BuiltIn LocalInvocationId +OpDecorate %offset_buffer NonWritable +OpDecorate %offset_buffer Binding 42 +OpDecorate %offset_buffer DescriptorSet 0 +OpDecorate %output_buffer Binding 69 +OpDecorate %output_buffer DescriptorSet 1 +%uint = OpTypeInt 32 0 +%v3uint = OpTypeVector %uint 3 +%_ptr_Input_v3uint = OpTypePointer Input %v3uint +%_runtimearr_uint = OpTypeRuntimeArray %uint +%_struct_8 = OpTypeStruct %_runtimearr_uint +%_ptr_StorageBuffer__struct_8 = OpTypePointer StorageBuffer %_struct_8 +%_struct_9 = OpTypeStruct %uint +%_ptr_StorageBuffer__struct_9 = OpTypePointer StorageBuffer %_struct_9 +%float = OpTypeFloat 32 +%void = OpTypeVoid +%17 = OpTypeFunction %void +%tid = OpVariable %_ptr_Input_v3uint Input +%_ptr_StorageBuffer__runtimearr_uint = OpTypePointer StorageBuffer %_runtimearr_uint +%offset_buffer = OpVariable %_ptr_StorageBuffer__struct_8 StorageBuffer +%uint_0 = OpConstant %uint 0 +%_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint +%output_buffer = OpVariable %_ptr_StorageBuffer__struct_9 StorageBuffer +%21 = OpTypeFunction %uint %uint +%uint_1 = OpConstant %uint 1 +%bool = OpTypeBool +%float_1_7 = OpConstant %float 1.7 +%uint_1333788671 = OpConstant %uint 1333788671 +%uint_4294967295 = OpConstant %uint 4294967295 +%uint_5 = OpConstant %uint 5 +%uint_25096 = OpConstant %uint 25096 +%1 = OpFunction %void None %17 %29 = OpLabel OpLine %5 24 4 -%30 = OpLoad %11 %2 +%30 = OpLoad %v3uint %tid OpLine %5 25 4 -%31 = OpInBoundsAccessChain %18 %3 %19 -%32 = OpArrayLength %10 %3 0 +%31 = OpInBoundsAccessChain %_ptr_StorageBuffer__runtimearr_uint %offset_buffer %uint_0 +%32 = OpArrayLength %uint %offset_buffer 0 OpLine %5 26 4 -%33 = OpInBoundsAccessChain %20 %4 %19 +%33 = OpInBoundsAccessChain %_ptr_StorageBuffer_uint %output_buffer %uint_0 OpLine %5 30 36 -%34 = OpCompositeExtract %10 %30 0 +%34 = OpCompositeExtract %uint %30 0 OpLine %5 30 21 -%35 = OpFunctionCall %10 %6 %34 +%35 = OpFunctionCall %uint %dis_reference__compute_offset %34 OpLine %5 31 26 -%36 = OpULessThan %23 %35 %32 +%36 = OpULessThan %bool %35 %32 OpNoLine OpSelectionMerge %37 None OpBranchConditional %36 %38 %39 @@ -139,30 +139,30 @@ OpBranch %37 OpReturn %37 = OpLabel OpLine %5 31 26 -%40 = OpIAdd %10 %19 %35 -%41 = OpInBoundsAccessChain %20 %31 %40 -%42 = OpLoad %10 %41 +%40 = OpIAdd %uint %uint_0 %35 +%41 = OpInBoundsAccessChain %_ptr_StorageBuffer_uint %31 %40 +%42 = OpLoad %uint %41 OpLine %5 32 21 -%43 = OpConvertUToF %15 %42 +%43 = OpConvertUToF %float %42 OpLine %5 32 20 -%44 = OpFMul %15 %43 %24 -%45 = OpBitcast %15 %19 -%46 = OpBitcast %15 %25 -%47 = OpConvertFToU %10 %44 -%48 = OpFUnordLessThan %23 %44 %45 -%49 = OpFOrdGreaterThan %23 %44 %46 -%50 = OpSelect %10 %48 %19 %47 -%51 = OpSelect %10 %49 %26 %50 +%44 = OpFMul %float %43 %float_1_7 +%45 = OpBitcast %float %uint_0 +%46 = OpBitcast %float %uint_1333788671 +%47 = OpConvertFToU %uint %44 +%48 = OpFUnordLessThan %bool %44 %45 +%49 = OpFOrdGreaterThan %bool %44 %46 +%50 = OpSelect %uint %48 %uint_0 %47 +%51 = OpSelect %uint %49 %uint_4294967295 %50 OpLine %5 59 13 -%52 = OpAtomicIAdd %10 %33 %27 %28 %51 +%52 = OpAtomicIAdd %uint %33 %uint_5 %uint_25096 %51 OpNoLine OpReturn OpFunctionEnd -%6 = OpFunction %10 DontInline|Const %21 -%53 = OpFunctionParameter %10 +%dis_reference__compute_offset = OpFunction %uint DontInline|Const %21 +%53 = OpFunctionParameter %uint %54 = OpLabel OpLine %5 43 4 -%55 = OpIAdd %10 %22 %53 +%55 = OpIAdd %uint %uint_1 %53 OpNoLine OpReturnValue %55 OpFunctionEnd From dba1e8df8400d0288824023acad7e357ab54a352 Mon Sep 17 00:00:00 2001 From: firestar99 Date: Fri, 27 Mar 2026 17:43:06 +0100 Subject: [PATCH 11/12] dis_ctx: padding, spirv-tools profile matches very accurately --- .../src/codegen/instructions.rs | 18 +- crates/rspirv2-types/src/dis.rs | 35 +- crates/rspirv2-types/src/operand/id.rs | 27 +- crates/rspirv2-types/src/operand/mod.rs | 4 + crates/rspirv2/src/core/inst.rs | 6827 +++++++++-------- crates/rspirv2/src/debug_printf/inst.rs | 7 +- crates/rspirv2/src/glsl_std_450/inst.rs | 715 +- spv/dis_reference.rspirv2 | 176 +- spv/dis_reference.spirv_tools_like | 176 +- 9 files changed, 4265 insertions(+), 3720 deletions(-) diff --git a/crates/grammar-parser/src/codegen/instructions.rs b/crates/grammar-parser/src/codegen/instructions.rs index f2ffbdea..7b4a21bc 100644 --- a/crates/grammar-parser/src/codegen/instructions.rs +++ b/crates/grammar-parser/src/codegen/instructions.rs @@ -48,7 +48,7 @@ pub fn write_inst(writer: &mut GrammarWriter, grammar: &Grammar<'_>) -> anyhow:: let reader = (!members.is_empty()).then(|| quote!(let mut op_reader = )); // disassembly - let dis_operand_ctx = if !member_operands.is_empty() { + let dis_operand_ctx = { let id_result_opt = if let Some(id_result) = id_result { let name = &id_result.name; quote!(self.#name) @@ -65,17 +65,9 @@ pub fn write_inst(writer: &mut GrammarWriter, grammar: &Grammar<'_>) -> anyhow:: let ctx = &OperandDisContext { id_result: #id_result_opt, id_result_type: #id_result_type_opt, - ctx: _ctx, + ctx, }; } - } else { - quote!() - }; - let (dis_id_result_pat, dis_id_result_value) = if let Some(id_result) = id_result { - let name = &id_result.name; - ("{} = ", Some(quote!(, self.#name.dis(ctx)))) - } else { - ("", None) }; // `name: Ident` is a good key to filter out the id_result, as names must be unique anyway let operands_without_result_id = member_operands @@ -89,7 +81,7 @@ pub fn write_inst(writer: &mut GrammarWriter, grammar: &Grammar<'_>) -> anyhow:: quote!(, self.#name.dis(ctx)) }) .collect::>(); - let pat = [dis_id_result_pat, inst.opname.as_ref()] + let pat = ["{}", inst.opname.as_ref()] .into_iter() .chain( operands_without_result_id @@ -144,10 +136,10 @@ pub fn write_inst(writer: &mut GrammarWriter, grammar: &Grammar<'_>) -> anyhow:: }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { #dis_operand_ctx #rspirv_spaces_prefix - write!(f, #pat #dis_id_result_value #(#dis_operands_value)*) + write!(f, #pat, ctx.id_result_writer() #(#dis_operands_value)*) } } } diff --git a/crates/rspirv2-types/src/dis.rs b/crates/rspirv2-types/src/dis.rs index cd84d1a0..783c01a0 100644 --- a/crates/rspirv2-types/src/dis.rs +++ b/crates/rspirv2-types/src/dis.rs @@ -30,6 +30,8 @@ pub struct DisOptions { pub id_naming: IdNaming, /// How to derive names for types pub type_naming: TypeNaming, + /// The padding to add before each instruction to make the `=` be on the same line. Usually N-many spaces. + pub padding: String, } /// Defines where names of types should be derived from. @@ -58,6 +60,9 @@ pub enum TypeNaming { C, } +/// `&str` of 15 spaces, the default padding in spirv-tools +pub const STR_15_SPACES: &str = " "; + impl Default for DisOptions { #[inline] fn default() -> Self { @@ -68,6 +73,7 @@ impl Default for DisOptions { const_fmt: true, id_naming: IdNaming::All, type_naming: TypeNaming::Rust, + padding: STR_15_SPACES.into(), } } } @@ -77,6 +83,7 @@ impl DisOptions { pub fn simple() -> Self { Self { color: false, + padding: "".to_string(), ..Default::default() } } @@ -90,6 +97,7 @@ impl DisOptions { const_fmt: true, id_naming: IdNaming::RawId, type_naming: TypeNaming::Rust, + padding: String::new(), } } @@ -102,6 +110,7 @@ impl DisOptions { const_fmt: true, id_naming: IdNaming::All, type_naming: TypeNaming::C, + padding: STR_15_SPACES.into(), } } @@ -167,6 +176,19 @@ impl Display for ResolvedIdName<'_> { } impl DisContext { + /// Creates a new [`DisContext`] without having scanned the module for the required extra information. + /// + /// **WARNING**: You need to [`Self::add_context`] the instructions you want to decode before disassembling, + /// as the disassembly generated may be invalid without the required context. For example, `OpConstant` needs to + /// query the type of constant their value is to format it correctly as a float or an int. + #[inline] + pub fn no_context(opt: DisOptions) -> Self { + Self { + opt, + ..Default::default() + } + } + /// Scan the supplied [`InstSlice`] for useful context pub fn add_context(&mut self, slice: &InstSlice) { ISA::add_context(slice.as_raw(), self); @@ -217,19 +239,6 @@ impl DisContext { IdName::ExplicitName(name) | IdName::DerivedName(name) => ResolvedIdName::Named(name), } } - - /// Creates a new [`DisContext`] without having scanned the module for the required extra information. - /// - /// **WARNING**: You need to [`Self::add_context`] the instructions you want to decode before disassembling, - /// as the disassembly generated may be invalid without the required context. For example, `OpConstant` needs to - /// query the type of constant their value is to format it correctly as a float or an int. - #[inline] - pub fn no_context(opt: DisOptions) -> Self { - Self { - opt, - ..Default::default() - } - } } /// An instruction set that provides additional context information for disassembly. diff --git a/crates/rspirv2-types/src/operand/id.rs b/crates/rspirv2-types/src/operand/id.rs index 10942467..eb0f4d0b 100644 --- a/crates/rspirv2-types/src/operand/id.rs +++ b/crates/rspirv2-types/src/operand/id.rs @@ -2,10 +2,11 @@ use crate::Word; use crate::binary::{DecodeError, EncodeError, OperandReader, WordWriter}; +use crate::dis::ResolvedIdName; use crate::meta::{Category, OperandKind}; use crate::operand::{Operand, OperandDisContext, OperandEncoding}; use anstyle::AnsiColor; -use std::fmt::Formatter; +use std::fmt::{Display, Formatter}; pub const OPERAND_KIND_ID_RESULT_TYPE: OperandKind = OperandKind { name: "IdResultType", @@ -74,10 +75,12 @@ unsafe impl OperandEncoding for IdResult { #[inline] fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &OperandDisContext<'_>) -> std::fmt::Result { - self.dis_fmt_color(f, ctx, AnsiColor::Blue.on_default(), false) + self.dis_fmt_color(f, ctx, ID_RESULT_COLOR, false) } } +pub const ID_RESULT_COLOR: anstyle::Style = AnsiColor::Blue.on_default(); + impl IdResult { pub fn dis_fmt_color( &self, @@ -93,6 +96,26 @@ impl IdResult { } } +pub struct IdResultWriter<'a>(pub &'a OperandDisContext<'a>); + +impl Display for IdResultWriter<'_> { + fn fmt(&self, f: &mut Formatter<'_>) -> std::fmt::Result { + let ctx = self.0; + if let Some(id_result) = self.0.id_result { + let name = ctx.id_to_name(id_result); + let name_len = match name { + ResolvedIdName::Named(name) => name.len(), + ResolvedIdName::Raw(id) => id.0.0.checked_ilog10().unwrap_or(1) as usize + 1, + }; + let pad_len = ctx.padding.len().saturating_sub(name_len + 4); + let style = ctx.color(ID_RESULT_COLOR); + write!(f, "{}{style}%{}{style:#} = ", &ctx.padding[..pad_len], name) + } else { + write!(f, "{}", &ctx.padding) + } + } +} + pub type OptionIdResult = Option; macro_rules! id_ref { diff --git a/crates/rspirv2-types/src/operand/mod.rs b/crates/rspirv2-types/src/operand/mod.rs index accd2609..1609aaf4 100644 --- a/crates/rspirv2-types/src/operand/mod.rs +++ b/crates/rspirv2-types/src/operand/mod.rs @@ -167,6 +167,10 @@ impl<'a> OperandDisContext<'a> { id_result_type: None, } } + + pub fn id_result_writer(&self) -> IdResultWriter<'_> { + IdResultWriter(self) + } } impl<'a> Deref for OperandDisContext<'a> { diff --git a/crates/rspirv2/src/core/inst.rs b/crates/rspirv2/src/core/inst.rs index 65595ca3..25a88fad 100644 --- a/crates/rspirv2/src/core/inst.rs +++ b/crates/rspirv2/src/core/inst.rs @@ -18,8 +18,13 @@ impl InstEncoding for OpNop { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpNop") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpNop", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -51,17 +56,17 @@ impl InstEncoding for OpUndef { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUndef{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpUndef{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -90,13 +95,18 @@ impl InstEncoding for OpSourceContinued { continued_source: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpSourceContinued{}", self.continued_source.dis(ctx)) + write!( + f, + "{}OpSourceContinued{}", + ctx.id_result_writer(), + self.continued_source.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -136,15 +146,16 @@ impl InstEncoding for OpSource { source: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSource{}{}{}{}", + "{}OpSource{}{}{}{}", + ctx.id_result_writer(), self.source_language.dis(ctx), self.version.dis(ctx), self.file.dis(ctx), @@ -176,13 +187,18 @@ impl InstEncoding for OpSourceExtension { extension: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpSourceExtension{}", self.extension.dis(ctx)) + write!( + f, + "{}OpSourceExtension{}", + ctx.id_result_writer(), + self.extension.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -213,13 +229,19 @@ impl InstEncoding for OpName { name: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpName{}{}", self.target.dis(ctx), self.name.dis(ctx)) + write!( + f, + "{}OpName{}{}", + ctx.id_result_writer(), + self.target.dis(ctx), + self.name.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -255,15 +277,16 @@ impl InstEncoding for OpMemberName { name: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpMemberName{}{}{}", + "{}OpMemberName{}{}{}", + ctx.id_result_writer(), self.ty.dis(ctx), self.member.dis(ctx), self.name.dis(ctx) @@ -299,16 +322,16 @@ impl InstEncoding for OpString { string: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpString{}", - self.id_result.dis(ctx), + "{}OpString{}", + ctx.id_result_writer(), self.string.dis(ctx) ) } @@ -346,15 +369,16 @@ impl InstEncoding for OpLine { column: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpLine{}{}{}", + "{}OpLine{}{}{}", + ctx.id_result_writer(), self.file.dis(ctx), self.line.dis(ctx), self.column.dis(ctx) @@ -385,13 +409,18 @@ impl InstEncoding for OpExtension { name: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpExtension{}", self.name.dis(ctx)) + write!( + f, + "{}OpExtension{}", + ctx.id_result_writer(), + self.name.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -422,16 +451,16 @@ impl InstEncoding for OpExtInstImport { name: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpExtInstImport{}", - self.id_result.dis(ctx), + "{}OpExtInstImport{}", + ctx.id_result_writer(), self.name.dis(ctx) ) } @@ -477,17 +506,17 @@ impl InstEncoding for OpExtInst { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpExtInst{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpExtInst{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.set.dis(ctx), self.instruction.dis(ctx), @@ -524,15 +553,16 @@ impl InstEncoding for OpMemoryModel { memory_model: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpMemoryModel{}{}", + "{}OpMemoryModel{}{}", + ctx.id_result_writer(), self.addressing_model.dis(ctx), self.memory_model.dis(ctx) ) @@ -575,15 +605,16 @@ impl InstEncoding for OpEntryPoint { interface: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpEntryPoint{}{}{}{}", + "{}OpEntryPoint{}{}{}{}", + ctx.id_result_writer(), self.execution_model.dis(ctx), self.entry_point.dis(ctx), self.name.dis(ctx), @@ -620,15 +651,16 @@ impl InstEncoding for OpExecutionMode { mode: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpExecutionMode{}{}", + "{}OpExecutionMode{}{}", + ctx.id_result_writer(), self.entry_point.dis(ctx), self.mode.dis(ctx) ) @@ -658,13 +690,18 @@ impl InstEncoding for OpCapability { capability: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpCapability{}", self.capability.dis(ctx)) + write!( + f, + "{}OpCapability{}", + ctx.id_result_writer(), + self.capability.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -691,13 +728,13 @@ impl InstEncoding for OpTypeVoid { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeVoid", self.id_result.dis(ctx)) + write!(f, "{}OpTypeVoid", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -724,13 +761,13 @@ impl InstEncoding for OpTypeBool { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeBool", self.id_result.dis(ctx)) + write!(f, "{}OpTypeBool", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -766,16 +803,16 @@ impl InstEncoding for OpTypeInt { signedness: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeInt{}{}", - self.id_result.dis(ctx), + "{}OpTypeInt{}{}", + ctx.id_result_writer(), self.width.dis(ctx), self.signedness.dis(ctx) ) @@ -814,16 +851,16 @@ impl InstEncoding for OpTypeFloat { floating_point_encoding: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeFloat{}{}", - self.id_result.dis(ctx), + "{}OpTypeFloat{}{}", + ctx.id_result_writer(), self.width.dis(ctx), self.floating_point_encoding.dis(ctx) ) @@ -862,16 +899,16 @@ impl InstEncoding for OpTypeVector { component_count: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeVector{}{}", - self.id_result.dis(ctx), + "{}OpTypeVector{}{}", + ctx.id_result_writer(), self.component_type.dis(ctx), self.component_count.dis(ctx) ) @@ -910,16 +947,16 @@ impl InstEncoding for OpTypeMatrix { column_count: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeMatrix{}{}", - self.id_result.dis(ctx), + "{}OpTypeMatrix{}{}", + ctx.id_result_writer(), self.column_type.dis(ctx), self.column_count.dis(ctx) ) @@ -982,16 +1019,16 @@ impl InstEncoding for OpTypeImage { access_qualifier: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeImage{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpTypeImage{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.sampled_type.dis(ctx), self.dim.dis(ctx), self.depth.dis(ctx), @@ -1027,13 +1064,13 @@ impl InstEncoding for OpTypeSampler { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeSampler", self.id_result.dis(ctx)) + write!(f, "{}OpTypeSampler", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1065,16 +1102,16 @@ impl InstEncoding for OpTypeSampledImage { image_type: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeSampledImage{}", - self.id_result.dis(ctx), + "{}OpTypeSampledImage{}", + ctx.id_result_writer(), self.image_type.dis(ctx) ) } @@ -1112,16 +1149,16 @@ impl InstEncoding for OpTypeArray { length: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeArray{}{}", - self.id_result.dis(ctx), + "{}OpTypeArray{}{}", + ctx.id_result_writer(), self.element_type.dis(ctx), self.length.dis(ctx) ) @@ -1156,16 +1193,16 @@ impl InstEncoding for OpTypeRuntimeArray { element_type: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeRuntimeArray{}", - self.id_result.dis(ctx), + "{}OpTypeRuntimeArray{}", + ctx.id_result_writer(), self.element_type.dis(ctx) ) } @@ -1199,16 +1236,16 @@ impl InstEncoding for OpTypeStruct { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeStruct{}", - self.id_result.dis(ctx), + "{}OpTypeStruct{}", + ctx.id_result_writer(), self.id_ref.dis(ctx) ) } @@ -1242,16 +1279,16 @@ impl InstEncoding for OpTypeOpaque { literal_string: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeOpaque{}", - self.id_result.dis(ctx), + "{}OpTypeOpaque{}", + ctx.id_result_writer(), self.literal_string.dis(ctx) ) } @@ -1289,16 +1326,16 @@ impl InstEncoding for OpTypePointer { ty: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypePointer{}{}", - self.id_result.dis(ctx), + "{}OpTypePointer{}{}", + ctx.id_result_writer(), self.storage_class.dis(ctx), self.ty.dis(ctx) ) @@ -1337,16 +1374,16 @@ impl InstEncoding for OpTypeFunction { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeFunction{}{}", - self.id_result.dis(ctx), + "{}OpTypeFunction{}{}", + ctx.id_result_writer(), self.return_type.dis(ctx), self.id_ref.dis(ctx) ) @@ -1376,13 +1413,13 @@ impl InstEncoding for OpTypeEvent { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeEvent", self.id_result.dis(ctx)) + write!(f, "{}OpTypeEvent", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1409,13 +1446,13 @@ impl InstEncoding for OpTypeDeviceEvent { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeDeviceEvent", self.id_result.dis(ctx)) + write!(f, "{}OpTypeDeviceEvent", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1442,13 +1479,13 @@ impl InstEncoding for OpTypeReserveId { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeReserveId", self.id_result.dis(ctx)) + write!(f, "{}OpTypeReserveId", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1475,13 +1512,13 @@ impl InstEncoding for OpTypeQueue { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeQueue", self.id_result.dis(ctx)) + write!(f, "{}OpTypeQueue", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1513,16 +1550,16 @@ impl InstEncoding for OpTypePipe { qualifier: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypePipe{}", - self.id_result.dis(ctx), + "{}OpTypePipe{}", + ctx.id_result_writer(), self.qualifier.dis(ctx) ) } @@ -1556,15 +1593,16 @@ impl InstEncoding for OpTypeForwardPointer { storage_class: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpTypeForwardPointer{}{}", + "{}OpTypeForwardPointer{}{}", + ctx.id_result_writer(), self.pointer_type.dis(ctx), self.storage_class.dis(ctx) ) @@ -1599,17 +1637,17 @@ impl InstEncoding for OpConstantTrue { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantTrue{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConstantTrue{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -1643,17 +1681,17 @@ impl InstEncoding for OpConstantFalse { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantFalse{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConstantFalse{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -1691,17 +1729,17 @@ impl InstEncoding for OpConstant { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstant{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConstant{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx) ) @@ -1740,17 +1778,17 @@ impl InstEncoding for OpConstantComposite { constituents: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantComposite{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConstantComposite{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.constituents.dis(ctx) ) @@ -1797,17 +1835,17 @@ impl InstEncoding for OpConstantSampler { sampler_filter_mode: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantSampler{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpConstantSampler{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampler_addressing_mode.dis(ctx), self.param.dis(ctx), @@ -1844,17 +1882,17 @@ impl InstEncoding for OpConstantNull { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantNull{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConstantNull{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -1888,17 +1926,17 @@ impl InstEncoding for OpSpecConstantTrue { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstantTrue{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSpecConstantTrue{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -1932,17 +1970,17 @@ impl InstEncoding for OpSpecConstantFalse { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstantFalse{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSpecConstantFalse{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -1980,17 +2018,17 @@ impl InstEncoding for OpSpecConstant { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstant{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSpecConstant{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx) ) @@ -2029,17 +2067,17 @@ impl InstEncoding for OpSpecConstantComposite { constituents: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstantComposite{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSpecConstantComposite{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.constituents.dis(ctx) ) @@ -2078,17 +2116,17 @@ impl InstEncoding for OpSpecConstantOp { opcode: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstantOp{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSpecConstantOp{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.opcode.dis(ctx) ) @@ -2131,17 +2169,17 @@ impl InstEncoding for OpFunction { function_type: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFunction{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFunction{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.function_control.dis(ctx), self.function_type.dis(ctx) @@ -2177,17 +2215,17 @@ impl InstEncoding for OpFunctionParameter { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFunctionParameter{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFunctionParameter{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -2211,8 +2249,13 @@ impl InstEncoding for OpFunctionEnd { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpFunctionEnd") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpFunctionEnd", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2252,17 +2295,17 @@ impl InstEncoding for OpFunctionCall { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFunctionCall{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFunctionCall{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.function.dis(ctx), self.id_ref.dis(ctx) @@ -2306,17 +2349,17 @@ impl InstEncoding for OpVariable { initializer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpVariable{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpVariable{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.storage_class.dis(ctx), self.initializer.dis(ctx) @@ -2364,17 +2407,17 @@ impl InstEncoding for OpImageTexelPointer { sample: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageTexelPointer{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageTexelPointer{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx), @@ -2419,17 +2462,17 @@ impl InstEncoding for OpLoad { memory_access: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpLoad{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpLoad{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory_access.dis(ctx) @@ -2469,15 +2512,16 @@ impl InstEncoding for OpStore { memory_access: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpStore{}{}{}", + "{}OpStore{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.object.dis(ctx), self.memory_access.dis(ctx) @@ -2521,15 +2565,16 @@ impl InstEncoding for OpCopyMemory { memory_access_1: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCopyMemory{}{}{}{}", + "{}OpCopyMemory{}{}{}{}", + ctx.id_result_writer(), self.target.dis(ctx), self.source.dis(ctx), self.memory_access_0.dis(ctx), @@ -2578,15 +2623,16 @@ impl InstEncoding for OpCopyMemorySized { memory_access_1: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCopyMemorySized{}{}{}{}{}", + "{}OpCopyMemorySized{}{}{}{}{}", + ctx.id_result_writer(), self.target.dis(ctx), self.source.dis(ctx), self.size.dis(ctx), @@ -2632,17 +2678,17 @@ impl InstEncoding for OpAccessChain { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAccessChain{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpAccessChain{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.indexes.dis(ctx) @@ -2686,17 +2732,17 @@ impl InstEncoding for OpInBoundsAccessChain { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpInBoundsAccessChain{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpInBoundsAccessChain{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.indexes.dis(ctx) @@ -2744,17 +2790,17 @@ impl InstEncoding for OpPtrAccessChain { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpPtrAccessChain{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpPtrAccessChain{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.element.dis(ctx), @@ -2799,17 +2845,17 @@ impl InstEncoding for OpArrayLength { array_member: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArrayLength{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpArrayLength{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.structure.dis(ctx), self.array_member.dis(ctx) @@ -2849,17 +2895,17 @@ impl InstEncoding for OpGenericPtrMemSemantics { pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGenericPtrMemSemantics{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGenericPtrMemSemantics{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx) ) @@ -2906,17 +2952,17 @@ impl InstEncoding for OpInBoundsPtrAccessChain { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpInBoundsPtrAccessChain{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpInBoundsPtrAccessChain{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.element.dis(ctx), @@ -2953,15 +2999,16 @@ impl InstEncoding for OpDecorate { decoration: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpDecorate{}{}", + "{}OpDecorate{}{}", + ctx.id_result_writer(), self.target.dis(ctx), self.decoration.dis(ctx) ) @@ -3000,15 +3047,16 @@ impl InstEncoding for OpMemberDecorate { decoration: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpMemberDecorate{}{}{}", + "{}OpMemberDecorate{}{}{}", + ctx.id_result_writer(), self.structure_type.dis(ctx), self.member.dis(ctx), self.decoration.dis(ctx) @@ -3039,13 +3087,13 @@ impl InstEncoding for OpDecorationGroup { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpDecorationGroup", self.id_result.dis(ctx)) + write!(f, "{}OpDecorationGroup", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -3077,15 +3125,16 @@ impl InstEncoding for OpGroupDecorate { targets: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpGroupDecorate{}{}", + "{}OpGroupDecorate{}{}", + ctx.id_result_writer(), self.decoration_group.dis(ctx), self.targets.dis(ctx) ) @@ -3120,15 +3169,16 @@ impl InstEncoding for OpGroupMemberDecorate { targets: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpGroupMemberDecorate{}{}", + "{}OpGroupMemberDecorate{}{}", + ctx.id_result_writer(), self.decoration_group.dis(ctx), self.targets.dis(ctx) ) @@ -3171,17 +3221,17 @@ impl InstEncoding for OpVectorExtractDynamic { index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpVectorExtractDynamic{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpVectorExtractDynamic{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector.dis(ctx), self.index.dis(ctx) @@ -3229,17 +3279,17 @@ impl InstEncoding for OpVectorInsertDynamic { index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpVectorInsertDynamic{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpVectorInsertDynamic{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector.dis(ctx), self.component.dis(ctx), @@ -3288,17 +3338,17 @@ impl InstEncoding for OpVectorShuffle { components: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpVectorShuffle{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpVectorShuffle{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx), @@ -3339,17 +3389,17 @@ impl InstEncoding for OpCompositeConstruct { constituents: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCompositeConstruct{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCompositeConstruct{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.constituents.dis(ctx) ) @@ -3392,17 +3442,17 @@ impl InstEncoding for OpCompositeExtract { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCompositeExtract{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpCompositeExtract{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.composite.dis(ctx), self.indexes.dis(ctx) @@ -3450,17 +3500,17 @@ impl InstEncoding for OpCompositeInsert { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCompositeInsert{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpCompositeInsert{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.object.dis(ctx), self.composite.dis(ctx), @@ -3501,17 +3551,17 @@ impl InstEncoding for OpCopyObject { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCopyObject{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCopyObject{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -3550,17 +3600,17 @@ impl InstEncoding for OpTranspose { matrix: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTranspose{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpTranspose{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.matrix.dis(ctx) ) @@ -3603,17 +3653,17 @@ impl InstEncoding for OpSampledImage { sampler: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSampledImage{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSampledImage{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.sampler.dis(ctx) @@ -3661,17 +3711,17 @@ impl InstEncoding for OpImageSampleImplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -3720,17 +3770,17 @@ impl InstEncoding for OpImageSampleExplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -3783,17 +3833,17 @@ impl InstEncoding for OpImageSampleDrefImplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -3847,17 +3897,17 @@ impl InstEncoding for OpImageSampleDrefExplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -3907,17 +3957,17 @@ impl InstEncoding for OpImageSampleProjImplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleProjImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleProjImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -3966,17 +4016,17 @@ impl InstEncoding for OpImageSampleProjExplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleProjExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleProjExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -4029,17 +4079,17 @@ impl InstEncoding for OpImageSampleProjDrefImplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleProjDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleProjDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -4093,17 +4143,17 @@ impl InstEncoding for OpImageSampleProjDrefExplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleProjDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleProjDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -4153,17 +4203,17 @@ impl InstEncoding for OpImageFetch { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageFetch{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageFetch{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx), @@ -4216,17 +4266,17 @@ impl InstEncoding for OpImageGather { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageGather{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageGather{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -4280,17 +4330,17 @@ impl InstEncoding for OpImageDrefGather { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageDrefGather{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageDrefGather{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -4340,17 +4390,17 @@ impl InstEncoding for OpImageRead { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageRead{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageRead{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx), @@ -4395,15 +4445,16 @@ impl InstEncoding for OpImageWrite { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpImageWrite{}{}{}{}", + "{}OpImageWrite{}{}{}{}", + ctx.id_result_writer(), self.image.dis(ctx), self.coordinate.dis(ctx), self.texel.dis(ctx), @@ -4444,17 +4495,17 @@ impl InstEncoding for OpImage { sampled_image: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImage{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpImage{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx) ) @@ -4493,17 +4544,17 @@ impl InstEncoding for OpImageQueryFormat { image: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageQueryFormat{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpImageQueryFormat{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx) ) @@ -4542,17 +4593,17 @@ impl InstEncoding for OpImageQueryOrder { image: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageQueryOrder{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpImageQueryOrder{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx) ) @@ -4595,17 +4646,17 @@ impl InstEncoding for OpImageQuerySizeLod { level_of_detail: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageQuerySizeLod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpImageQuerySizeLod{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.level_of_detail.dis(ctx) @@ -4645,17 +4696,17 @@ impl InstEncoding for OpImageQuerySize { image: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageQuerySize{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpImageQuerySize{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx) ) @@ -4698,17 +4749,17 @@ impl InstEncoding for OpImageQueryLod { coordinate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageQueryLod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpImageQueryLod{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx) @@ -4748,17 +4799,17 @@ impl InstEncoding for OpImageQueryLevels { image: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageQueryLevels{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpImageQueryLevels{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx) ) @@ -4797,17 +4848,17 @@ impl InstEncoding for OpImageQuerySamples { image: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageQuerySamples{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpImageQuerySamples{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx) ) @@ -4846,17 +4897,17 @@ impl InstEncoding for OpConvertFToU { float_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertFToU{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertFToU{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.float_value.dis(ctx) ) @@ -4895,17 +4946,17 @@ impl InstEncoding for OpConvertFToS { float_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertFToS{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertFToS{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.float_value.dis(ctx) ) @@ -4944,17 +4995,17 @@ impl InstEncoding for OpConvertSToF { signed_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertSToF{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertSToF{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.signed_value.dis(ctx) ) @@ -4993,17 +5044,17 @@ impl InstEncoding for OpConvertUToF { unsigned_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertUToF{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertUToF{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.unsigned_value.dis(ctx) ) @@ -5042,17 +5093,17 @@ impl InstEncoding for OpUConvert { unsigned_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUConvert{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpUConvert{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.unsigned_value.dis(ctx) ) @@ -5091,17 +5142,17 @@ impl InstEncoding for OpSConvert { signed_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSConvert{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSConvert{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.signed_value.dis(ctx) ) @@ -5140,17 +5191,17 @@ impl InstEncoding for OpFConvert { float_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFConvert{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFConvert{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.float_value.dis(ctx) ) @@ -5189,17 +5240,17 @@ impl InstEncoding for OpQuantizeToF16 { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpQuantizeToF16{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpQuantizeToF16{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx) ) @@ -5238,17 +5289,17 @@ impl InstEncoding for OpConvertPtrToU { pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertPtrToU{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertPtrToU{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx) ) @@ -5287,17 +5338,17 @@ impl InstEncoding for OpSatConvertSToU { signed_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSatConvertSToU{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSatConvertSToU{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.signed_value.dis(ctx) ) @@ -5336,17 +5387,17 @@ impl InstEncoding for OpSatConvertUToS { unsigned_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSatConvertUToS{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSatConvertUToS{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.unsigned_value.dis(ctx) ) @@ -5385,17 +5436,17 @@ impl InstEncoding for OpConvertUToPtr { integer_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertUToPtr{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertUToPtr{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.integer_value.dis(ctx) ) @@ -5434,17 +5485,17 @@ impl InstEncoding for OpPtrCastToGeneric { pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpPtrCastToGeneric{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpPtrCastToGeneric{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx) ) @@ -5483,17 +5534,17 @@ impl InstEncoding for OpGenericCastToPtr { pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGenericCastToPtr{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGenericCastToPtr{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx) ) @@ -5536,17 +5587,17 @@ impl InstEncoding for OpGenericCastToPtrExplicit { storage: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGenericCastToPtrExplicit{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGenericCastToPtrExplicit{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.storage.dis(ctx) @@ -5586,17 +5637,17 @@ impl InstEncoding for OpBitcast { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitcast{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpBitcast{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -5635,17 +5686,17 @@ impl InstEncoding for OpSNegate { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSNegate{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSNegate{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -5684,17 +5735,17 @@ impl InstEncoding for OpFNegate { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFNegate{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFNegate{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -5737,17 +5788,17 @@ impl InstEncoding for OpIAdd { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIAdd{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIAdd{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -5791,17 +5842,17 @@ impl InstEncoding for OpFAdd { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFAdd{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFAdd{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -5845,17 +5896,17 @@ impl InstEncoding for OpISub { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpISub{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpISub{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -5899,17 +5950,17 @@ impl InstEncoding for OpFSub { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFSub{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFSub{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -5953,17 +6004,17 @@ impl InstEncoding for OpIMul { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIMul{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIMul{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6007,17 +6058,17 @@ impl InstEncoding for OpFMul { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFMul{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFMul{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6061,17 +6112,17 @@ impl InstEncoding for OpUDiv { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUDiv{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUDiv{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6115,17 +6166,17 @@ impl InstEncoding for OpSDiv { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSDiv{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSDiv{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6169,17 +6220,17 @@ impl InstEncoding for OpFDiv { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFDiv{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFDiv{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6223,17 +6274,17 @@ impl InstEncoding for OpUMod { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUMod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUMod{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6277,17 +6328,17 @@ impl InstEncoding for OpSRem { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSRem{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSRem{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6331,17 +6382,17 @@ impl InstEncoding for OpSMod { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSMod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSMod{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6385,17 +6436,17 @@ impl InstEncoding for OpFRem { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFRem{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFRem{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6439,17 +6490,17 @@ impl InstEncoding for OpFMod { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFMod{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFMod{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6493,17 +6544,17 @@ impl InstEncoding for OpVectorTimesScalar { scalar: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpVectorTimesScalar{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpVectorTimesScalar{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector.dis(ctx), self.scalar.dis(ctx) @@ -6547,17 +6598,17 @@ impl InstEncoding for OpMatrixTimesScalar { scalar: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpMatrixTimesScalar{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpMatrixTimesScalar{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.matrix.dis(ctx), self.scalar.dis(ctx) @@ -6601,17 +6652,17 @@ impl InstEncoding for OpVectorTimesMatrix { matrix: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpVectorTimesMatrix{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpVectorTimesMatrix{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector.dis(ctx), self.matrix.dis(ctx) @@ -6655,17 +6706,17 @@ impl InstEncoding for OpMatrixTimesVector { vector: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpMatrixTimesVector{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpMatrixTimesVector{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.matrix.dis(ctx), self.vector.dis(ctx) @@ -6709,17 +6760,17 @@ impl InstEncoding for OpMatrixTimesMatrix { right_matrix: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpMatrixTimesMatrix{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpMatrixTimesMatrix{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.left_matrix.dis(ctx), self.right_matrix.dis(ctx) @@ -6763,17 +6814,17 @@ impl InstEncoding for OpOuterProduct { vector_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpOuterProduct{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpOuterProduct{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx) @@ -6817,17 +6868,17 @@ impl InstEncoding for OpDot { vector_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpDot{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpDot{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx) @@ -6871,17 +6922,17 @@ impl InstEncoding for OpIAddCarry { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIAddCarry{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIAddCarry{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6925,17 +6976,17 @@ impl InstEncoding for OpISubBorrow { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpISubBorrow{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpISubBorrow{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -6979,17 +7030,17 @@ impl InstEncoding for OpUMulExtended { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUMulExtended{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUMulExtended{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -7033,17 +7084,17 @@ impl InstEncoding for OpSMulExtended { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSMulExtended{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSMulExtended{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -7083,17 +7134,17 @@ impl InstEncoding for OpAny { vector: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAny{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpAny{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector.dis(ctx) ) @@ -7132,17 +7183,17 @@ impl InstEncoding for OpAll { vector: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAll{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpAll{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector.dis(ctx) ) @@ -7181,17 +7232,17 @@ impl InstEncoding for OpIsNan { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIsNan{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpIsNan{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.x.dis(ctx) ) @@ -7230,17 +7281,17 @@ impl InstEncoding for OpIsInf { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIsInf{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpIsInf{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.x.dis(ctx) ) @@ -7279,17 +7330,17 @@ impl InstEncoding for OpIsFinite { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIsFinite{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpIsFinite{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.x.dis(ctx) ) @@ -7328,17 +7379,17 @@ impl InstEncoding for OpIsNormal { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIsNormal{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpIsNormal{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.x.dis(ctx) ) @@ -7377,17 +7428,17 @@ impl InstEncoding for OpSignBitSet { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSignBitSet{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSignBitSet{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.x.dis(ctx) ) @@ -7430,17 +7481,17 @@ impl InstEncoding for OpLessOrGreater { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpLessOrGreater{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpLessOrGreater{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.x.dis(ctx), self.y.dis(ctx) @@ -7484,17 +7535,17 @@ impl InstEncoding for OpOrdered { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpOrdered{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpOrdered{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.x.dis(ctx), self.y.dis(ctx) @@ -7538,17 +7589,17 @@ impl InstEncoding for OpUnordered { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUnordered{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUnordered{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.x.dis(ctx), self.y.dis(ctx) @@ -7592,17 +7643,17 @@ impl InstEncoding for OpLogicalEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpLogicalEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpLogicalEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -7646,17 +7697,17 @@ impl InstEncoding for OpLogicalNotEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpLogicalNotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpLogicalNotEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -7700,17 +7751,17 @@ impl InstEncoding for OpLogicalOr { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpLogicalOr{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpLogicalOr{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -7754,17 +7805,17 @@ impl InstEncoding for OpLogicalAnd { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpLogicalAnd{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpLogicalAnd{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -7804,17 +7855,17 @@ impl InstEncoding for OpLogicalNot { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpLogicalNot{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpLogicalNot{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -7861,17 +7912,17 @@ impl InstEncoding for OpSelect { object_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSelect{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSelect{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.condition.dis(ctx), self.object_1.dis(ctx), @@ -7916,17 +7967,17 @@ impl InstEncoding for OpIEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -7970,17 +8021,17 @@ impl InstEncoding for OpINotEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpINotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpINotEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8024,17 +8075,17 @@ impl InstEncoding for OpUGreaterThan { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUGreaterThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUGreaterThan{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8078,17 +8129,17 @@ impl InstEncoding for OpSGreaterThan { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSGreaterThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSGreaterThan{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8132,17 +8183,17 @@ impl InstEncoding for OpUGreaterThanEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8186,17 +8237,17 @@ impl InstEncoding for OpSGreaterThanEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8240,17 +8291,17 @@ impl InstEncoding for OpULessThan { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpULessThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpULessThan{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8294,17 +8345,17 @@ impl InstEncoding for OpSLessThan { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSLessThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSLessThan{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8348,17 +8399,17 @@ impl InstEncoding for OpULessThanEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpULessThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpULessThanEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8402,17 +8453,17 @@ impl InstEncoding for OpSLessThanEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8456,17 +8507,17 @@ impl InstEncoding for OpFOrdEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFOrdEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFOrdEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8510,17 +8561,17 @@ impl InstEncoding for OpFUnordEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFUnordEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFUnordEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8564,17 +8615,17 @@ impl InstEncoding for OpFOrdNotEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFOrdNotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFOrdNotEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8618,17 +8669,17 @@ impl InstEncoding for OpFUnordNotEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFUnordNotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFUnordNotEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8672,17 +8723,17 @@ impl InstEncoding for OpFOrdLessThan { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFOrdLessThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFOrdLessThan{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8726,17 +8777,17 @@ impl InstEncoding for OpFUnordLessThan { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFUnordLessThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFUnordLessThan{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8780,17 +8831,17 @@ impl InstEncoding for OpFOrdGreaterThan { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFOrdGreaterThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFOrdGreaterThan{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8834,17 +8885,17 @@ impl InstEncoding for OpFUnordGreaterThan { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFUnordGreaterThan{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFUnordGreaterThan{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8888,17 +8939,17 @@ impl InstEncoding for OpFOrdLessThanEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFOrdLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFOrdLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8942,17 +8993,17 @@ impl InstEncoding for OpFUnordLessThanEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFUnordLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFUnordLessThanEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -8996,17 +9047,17 @@ impl InstEncoding for OpFOrdGreaterThanEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFOrdGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFOrdGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -9050,17 +9101,17 @@ impl InstEncoding for OpFUnordGreaterThanEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFUnordGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFUnordGreaterThanEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -9104,17 +9155,17 @@ impl InstEncoding for OpShiftRightLogical { shift: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpShiftRightLogical{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpShiftRightLogical{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.shift.dis(ctx) @@ -9158,17 +9209,17 @@ impl InstEncoding for OpShiftRightArithmetic { shift: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpShiftRightArithmetic{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpShiftRightArithmetic{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.shift.dis(ctx) @@ -9212,17 +9263,17 @@ impl InstEncoding for OpShiftLeftLogical { shift: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpShiftLeftLogical{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpShiftLeftLogical{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.shift.dis(ctx) @@ -9266,17 +9317,17 @@ impl InstEncoding for OpBitwiseOr { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitwiseOr{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpBitwiseOr{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -9320,17 +9371,17 @@ impl InstEncoding for OpBitwiseXor { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitwiseXor{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpBitwiseXor{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -9374,17 +9425,17 @@ impl InstEncoding for OpBitwiseAnd { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitwiseAnd{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpBitwiseAnd{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -9424,17 +9475,17 @@ impl InstEncoding for OpNot { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpNot{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpNot{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -9485,17 +9536,17 @@ impl InstEncoding for OpBitFieldInsert { count: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitFieldInsert{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpBitFieldInsert{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.insert.dis(ctx), @@ -9545,17 +9596,17 @@ impl InstEncoding for OpBitFieldSExtract { count: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitFieldSExtract{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpBitFieldSExtract{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.offset.dis(ctx), @@ -9604,17 +9655,17 @@ impl InstEncoding for OpBitFieldUExtract { count: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitFieldUExtract{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpBitFieldUExtract{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.offset.dis(ctx), @@ -9655,17 +9706,17 @@ impl InstEncoding for OpBitReverse { base: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitReverse{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpBitReverse{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx) ) @@ -9704,17 +9755,17 @@ impl InstEncoding for OpBitCount { base: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitCount{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpBitCount{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx) ) @@ -9753,17 +9804,17 @@ impl InstEncoding for OpDPdx { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpDPdx{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpDPdx{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -9802,17 +9853,17 @@ impl InstEncoding for OpDPdy { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpDPdy{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpDPdy{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -9851,17 +9902,17 @@ impl InstEncoding for OpFwidth { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFwidth{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFwidth{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -9900,17 +9951,17 @@ impl InstEncoding for OpDPdxFine { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpDPdxFine{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpDPdxFine{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -9949,17 +10000,17 @@ impl InstEncoding for OpDPdyFine { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpDPdyFine{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpDPdyFine{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -9998,17 +10049,17 @@ impl InstEncoding for OpFwidthFine { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFwidthFine{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFwidthFine{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -10047,17 +10098,17 @@ impl InstEncoding for OpDPdxCoarse { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpDPdxCoarse{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpDPdxCoarse{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -10096,17 +10147,17 @@ impl InstEncoding for OpDPdyCoarse { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpDPdyCoarse{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpDPdyCoarse{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -10145,17 +10196,17 @@ impl InstEncoding for OpFwidthCoarse { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFwidthCoarse{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFwidthCoarse{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.p.dis(ctx) ) @@ -10180,8 +10231,13 @@ impl InstEncoding for OpEmitVertex { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpEmitVertex") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpEmitVertex", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -10203,8 +10259,13 @@ impl InstEncoding for OpEndPrimitive { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpEndPrimitive") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpEndPrimitive", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -10231,13 +10292,18 @@ impl InstEncoding for OpEmitStreamVertex { stream: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpEmitStreamVertex{}", self.stream.dis(ctx)) + write!( + f, + "{}OpEmitStreamVertex{}", + ctx.id_result_writer(), + self.stream.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -10264,13 +10330,18 @@ impl InstEncoding for OpEndStreamPrimitive { stream: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpEndStreamPrimitive{}", self.stream.dis(ctx)) + write!( + f, + "{}OpEndStreamPrimitive{}", + ctx.id_result_writer(), + self.stream.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -10306,15 +10377,16 @@ impl InstEncoding for OpControlBarrier { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpControlBarrier{}{}{}", + "{}OpControlBarrier{}{}{}", + ctx.id_result_writer(), self.execution.dis(ctx), self.memory.dis(ctx), self.semantics.dis(ctx) @@ -10350,15 +10422,16 @@ impl InstEncoding for OpMemoryBarrier { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpMemoryBarrier{}{}", + "{}OpMemoryBarrier{}{}", + ctx.id_result_writer(), self.memory.dis(ctx), self.semantics.dis(ctx) ) @@ -10405,17 +10478,17 @@ impl InstEncoding for OpAtomicLoad { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicLoad{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicLoad{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -10460,15 +10533,16 @@ impl InstEncoding for OpAtomicStore { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpAtomicStore{}{}{}{}", + "{}OpAtomicStore{}{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.memory.dis(ctx), self.semantics.dis(ctx), @@ -10521,17 +10595,17 @@ impl InstEncoding for OpAtomicExchange { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicExchange{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicExchange{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -10593,17 +10667,17 @@ impl InstEncoding for OpAtomicCompareExchange { comparator: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicCompareExchange{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicCompareExchange{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -10667,17 +10741,17 @@ impl InstEncoding for OpAtomicCompareExchangeWeak { comparator: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicCompareExchangeWeak{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicCompareExchangeWeak{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -10729,17 +10803,17 @@ impl InstEncoding for OpAtomicIIncrement { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicIIncrement{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicIIncrement{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -10788,17 +10862,17 @@ impl InstEncoding for OpAtomicIDecrement { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicIDecrement{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicIDecrement{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -10851,17 +10925,17 @@ impl InstEncoding for OpAtomicIAdd { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicIAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicIAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -10915,17 +10989,17 @@ impl InstEncoding for OpAtomicISub { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicISub{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicISub{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -10979,17 +11053,17 @@ impl InstEncoding for OpAtomicSMin { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicSMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicSMin{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -11043,17 +11117,17 @@ impl InstEncoding for OpAtomicUMin { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicUMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicUMin{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -11107,17 +11181,17 @@ impl InstEncoding for OpAtomicSMax { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicSMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicSMax{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -11171,17 +11245,17 @@ impl InstEncoding for OpAtomicUMax { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicUMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicUMax{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -11235,17 +11309,17 @@ impl InstEncoding for OpAtomicAnd { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -11299,17 +11373,17 @@ impl InstEncoding for OpAtomicOr { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicOr{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicOr{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -11363,17 +11437,17 @@ impl InstEncoding for OpAtomicXor { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicXor{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicXor{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -11415,17 +11489,17 @@ impl InstEncoding for OpPhi { pair_id_ref_id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpPhi{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpPhi{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pair_id_ref_id_ref.dis(ctx) ) @@ -11464,15 +11538,16 @@ impl InstEncoding for OpLoopMerge { loop_control: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpLoopMerge{}{}{}", + "{}OpLoopMerge{}{}{}", + ctx.id_result_writer(), self.merge_block.dis(ctx), self.continue_target.dis(ctx), self.loop_control.dis(ctx) @@ -11508,15 +11583,16 @@ impl InstEncoding for OpSelectionMerge { selection_control: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSelectionMerge{}{}", + "{}OpSelectionMerge{}{}", + ctx.id_result_writer(), self.merge_block.dis(ctx), self.selection_control.dis(ctx) ) @@ -11546,13 +11622,13 @@ impl InstEncoding for OpLabel { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpLabel", self.id_result.dis(ctx)) + write!(f, "{}OpLabel", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -11579,13 +11655,18 @@ impl InstEncoding for OpBranch { target_label: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpBranch{}", self.target_label.dis(ctx)) + write!( + f, + "{}OpBranch{}", + ctx.id_result_writer(), + self.target_label.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -11625,15 +11706,16 @@ impl InstEncoding for OpBranchConditional { branch_weights: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpBranchConditional{}{}{}{}", + "{}OpBranchConditional{}{}{}{}", + ctx.id_result_writer(), self.condition.dis(ctx), self.true_label.dis(ctx), self.false_label.dis(ctx), @@ -11674,15 +11756,16 @@ impl InstEncoding for OpSwitch { target: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSwitch{}{}{}", + "{}OpSwitch{}{}{}", + ctx.id_result_writer(), self.selector.dis(ctx), self.default.dis(ctx), self.target.dis(ctx) @@ -11708,8 +11791,13 @@ impl InstEncoding for OpKill { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpKill") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpKill", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -11731,8 +11819,13 @@ impl InstEncoding for OpReturn { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpReturn") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpReturn", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -11759,13 +11852,18 @@ impl InstEncoding for OpReturnValue { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpReturnValue{}", self.value.dis(ctx)) + write!( + f, + "{}OpReturnValue{}", + ctx.id_result_writer(), + self.value.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -11787,8 +11885,13 @@ impl InstEncoding for OpUnreachable { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpUnreachable") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpUnreachable", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -11819,15 +11922,16 @@ impl InstEncoding for OpLifetimeStart { size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpLifetimeStart{}{}", + "{}OpLifetimeStart{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.size.dis(ctx) ) @@ -11861,15 +11965,16 @@ impl InstEncoding for OpLifetimeStop { size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpLifetimeStop{}{}", + "{}OpLifetimeStop{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.size.dis(ctx) ) @@ -11928,17 +12033,17 @@ impl InstEncoding for OpGroupAsyncCopy { event: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupAsyncCopy{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupAsyncCopy{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.destination.dis(ctx), @@ -11982,15 +12087,16 @@ impl InstEncoding for OpGroupWaitEvents { events_list: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpGroupWaitEvents{}{}{}", + "{}OpGroupWaitEvents{}{}{}", + ctx.id_result_writer(), self.execution.dis(ctx), self.num_events.dis(ctx), self.events_list.dis(ctx) @@ -12034,17 +12140,17 @@ impl InstEncoding for OpGroupAll { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupAll{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupAll{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.predicate.dis(ctx) @@ -12088,17 +12194,17 @@ impl InstEncoding for OpGroupAny { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupAny{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupAny{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.predicate.dis(ctx) @@ -12146,17 +12252,17 @@ impl InstEncoding for OpGroupBroadcast { local_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -12205,17 +12311,17 @@ impl InstEncoding for OpGroupIAdd { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupIAdd{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupIAdd{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -12264,17 +12370,17 @@ impl InstEncoding for OpGroupFAdd { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupFAdd{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupFAdd{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -12323,17 +12429,17 @@ impl InstEncoding for OpGroupFMin { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupFMin{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupFMin{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -12382,17 +12488,17 @@ impl InstEncoding for OpGroupUMin { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupUMin{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupUMin{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -12441,17 +12547,17 @@ impl InstEncoding for OpGroupSMin { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupSMin{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupSMin{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -12500,17 +12606,17 @@ impl InstEncoding for OpGroupFMax { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupFMax{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupFMax{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -12559,17 +12665,17 @@ impl InstEncoding for OpGroupUMax { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupUMax{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupUMax{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -12618,17 +12724,17 @@ impl InstEncoding for OpGroupSMax { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupSMax{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupSMax{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -12681,17 +12787,17 @@ impl InstEncoding for OpReadPipe { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpReadPipe{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpReadPipe{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe.dis(ctx), self.pointer.dis(ctx), @@ -12745,17 +12851,17 @@ impl InstEncoding for OpWritePipe { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpWritePipe{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpWritePipe{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe.dis(ctx), self.pointer.dis(ctx), @@ -12817,17 +12923,17 @@ impl InstEncoding for OpReservedReadPipe { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpReservedReadPipe{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpReservedReadPipe{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe.dis(ctx), self.reserve_id.dis(ctx), @@ -12891,17 +12997,17 @@ impl InstEncoding for OpReservedWritePipe { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpReservedWritePipe{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpReservedWritePipe{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe.dis(ctx), self.reserve_id.dis(ctx), @@ -12957,17 +13063,17 @@ impl InstEncoding for OpReserveReadPipePackets { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpReserveReadPipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpReserveReadPipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe.dis(ctx), self.num_packets.dis(ctx), @@ -13021,17 +13127,17 @@ impl InstEncoding for OpReserveWritePipePackets { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpReserveWritePipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpReserveWritePipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe.dis(ctx), self.num_packets.dis(ctx), @@ -13077,15 +13183,16 @@ impl InstEncoding for OpCommitReadPipe { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCommitReadPipe{}{}{}{}", + "{}OpCommitReadPipe{}{}{}{}", + ctx.id_result_writer(), self.pipe.dis(ctx), self.reserve_id.dis(ctx), self.packet_size.dis(ctx), @@ -13130,15 +13237,16 @@ impl InstEncoding for OpCommitWritePipe { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCommitWritePipe{}{}{}{}", + "{}OpCommitWritePipe{}{}{}{}", + ctx.id_result_writer(), self.pipe.dis(ctx), self.reserve_id.dis(ctx), self.packet_size.dis(ctx), @@ -13179,17 +13287,17 @@ impl InstEncoding for OpIsValidReserveId { reserve_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIsValidReserveId{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpIsValidReserveId{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.reserve_id.dis(ctx) ) @@ -13236,17 +13344,17 @@ impl InstEncoding for OpGetNumPipePackets { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetNumPipePackets{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGetNumPipePackets{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe.dis(ctx), self.packet_size.dis(ctx), @@ -13295,17 +13403,17 @@ impl InstEncoding for OpGetMaxPipePackets { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetMaxPipePackets{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGetMaxPipePackets{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe.dis(ctx), self.packet_size.dis(ctx), @@ -13362,17 +13470,17 @@ impl InstEncoding for OpGroupReserveReadPipePackets { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupReserveReadPipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupReserveReadPipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.pipe.dis(ctx), @@ -13431,17 +13539,17 @@ impl InstEncoding for OpGroupReserveWritePipePackets { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupReserveWritePipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupReserveWritePipePackets{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.pipe.dis(ctx), @@ -13492,15 +13600,16 @@ impl InstEncoding for OpGroupCommitReadPipe { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpGroupCommitReadPipe{}{}{}{}{}", + "{}OpGroupCommitReadPipe{}{}{}{}{}", + ctx.id_result_writer(), self.execution.dis(ctx), self.pipe.dis(ctx), self.reserve_id.dis(ctx), @@ -13550,15 +13659,16 @@ impl InstEncoding for OpGroupCommitWritePipe { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpGroupCommitWritePipe{}{}{}{}{}", + "{}OpGroupCommitWritePipe{}{}{}{}{}", + ctx.id_result_writer(), self.execution.dis(ctx), self.pipe.dis(ctx), self.reserve_id.dis(ctx), @@ -13612,17 +13722,17 @@ impl InstEncoding for OpEnqueueMarker { ret_event: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpEnqueueMarker{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpEnqueueMarker{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.queue.dis(ctx), self.num_events.dis(ctx), @@ -13704,17 +13814,17 @@ impl InstEncoding for OpEnqueueKernel { local_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpEnqueueKernel{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpEnqueueKernel{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.queue.dis(ctx), self.flags.dis(ctx), @@ -13779,17 +13889,17 @@ impl InstEncoding for OpGetKernelNDrangeSubGroupCount { param_align: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetKernelNDrangeSubGroupCount{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGetKernelNDrangeSubGroupCount{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.nd_range.dis(ctx), self.invoke.dis(ctx), @@ -13848,17 +13958,17 @@ impl InstEncoding for OpGetKernelNDrangeMaxSubGroupSize { param_align: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetKernelNDrangeMaxSubGroupSize{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGetKernelNDrangeMaxSubGroupSize{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.nd_range.dis(ctx), self.invoke.dis(ctx), @@ -13913,17 +14023,17 @@ impl InstEncoding for OpGetKernelWorkGroupSize { param_align: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetKernelWorkGroupSize{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGetKernelWorkGroupSize{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.invoke.dis(ctx), self.param.dis(ctx), @@ -13977,17 +14087,17 @@ impl InstEncoding for OpGetKernelPreferredWorkGroupSizeMultiple { param_align: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetKernelPreferredWorkGroupSizeMultiple{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGetKernelPreferredWorkGroupSizeMultiple{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.invoke.dis(ctx), self.param.dis(ctx), @@ -14020,13 +14130,18 @@ impl InstEncoding for OpRetainEvent { event: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpRetainEvent{}", self.event.dis(ctx)) + write!( + f, + "{}OpRetainEvent{}", + ctx.id_result_writer(), + self.event.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -14053,13 +14168,18 @@ impl InstEncoding for OpReleaseEvent { event: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpReleaseEvent{}", self.event.dis(ctx)) + write!( + f, + "{}OpReleaseEvent{}", + ctx.id_result_writer(), + self.event.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -14091,17 +14211,17 @@ impl InstEncoding for OpCreateUserEvent { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCreateUserEvent{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCreateUserEvent{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -14139,17 +14259,17 @@ impl InstEncoding for OpIsValidEvent { event: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIsValidEvent{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpIsValidEvent{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.event.dis(ctx) ) @@ -14183,15 +14303,16 @@ impl InstEncoding for OpSetUserEventStatus { status: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSetUserEventStatus{}{}", + "{}OpSetUserEventStatus{}{}", + ctx.id_result_writer(), self.event.dis(ctx), self.status.dis(ctx) ) @@ -14230,15 +14351,16 @@ impl InstEncoding for OpCaptureEventProfilingInfo { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCaptureEventProfilingInfo{}{}{}", + "{}OpCaptureEventProfilingInfo{}{}{}", + ctx.id_result_writer(), self.event.dis(ctx), self.profiling_info.dis(ctx), self.value.dis(ctx) @@ -14274,17 +14396,17 @@ impl InstEncoding for OpGetDefaultQueue { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetDefaultQueue{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGetDefaultQueue{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -14330,17 +14452,17 @@ impl InstEncoding for OpBuildNDRange { global_work_offset: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBuildNDRange{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpBuildNDRange{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.global_work_size.dis(ctx), self.local_work_size.dis(ctx), @@ -14389,17 +14511,17 @@ impl InstEncoding for OpImageSparseSampleImplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseSampleImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseSampleImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -14448,17 +14570,17 @@ impl InstEncoding for OpImageSparseSampleExplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseSampleExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseSampleExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -14511,17 +14633,17 @@ impl InstEncoding for OpImageSparseSampleDrefImplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseSampleDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseSampleDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -14575,17 +14697,17 @@ impl InstEncoding for OpImageSparseSampleDrefExplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseSampleDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseSampleDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -14635,17 +14757,17 @@ impl InstEncoding for OpImageSparseSampleProjImplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseSampleProjImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseSampleProjImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -14694,17 +14816,17 @@ impl InstEncoding for OpImageSparseSampleProjExplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseSampleProjExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseSampleProjExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -14757,17 +14879,17 @@ impl InstEncoding for OpImageSparseSampleProjDrefImplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseSampleProjDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseSampleProjDrefImplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -14821,17 +14943,17 @@ impl InstEncoding for OpImageSparseSampleProjDrefExplicitLod { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseSampleProjDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseSampleProjDrefExplicitLod{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -14881,17 +15003,17 @@ impl InstEncoding for OpImageSparseFetch { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseFetch{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseFetch{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx), @@ -14944,17 +15066,17 @@ impl InstEncoding for OpImageSparseGather { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseGather{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseGather{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -15008,17 +15130,17 @@ impl InstEncoding for OpImageSparseDrefGather { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseDrefGather{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseDrefGather{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -15060,17 +15182,17 @@ impl InstEncoding for OpImageSparseTexelsResident { resident_code: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseTexelsResident{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpImageSparseTexelsResident{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.resident_code.dis(ctx) ) @@ -15095,8 +15217,13 @@ impl InstEncoding for OpNoLine { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpNoLine") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpNoLine", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -15140,17 +15267,17 @@ impl InstEncoding for OpAtomicFlagTestAndSet { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicFlagTestAndSet{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicFlagTestAndSet{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -15191,15 +15318,16 @@ impl InstEncoding for OpAtomicFlagClear { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpAtomicFlagClear{}{}{}", + "{}OpAtomicFlagClear{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.memory.dis(ctx), self.semantics.dis(ctx) @@ -15247,17 +15375,17 @@ impl InstEncoding for OpImageSparseRead { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSparseRead{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSparseRead{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx), @@ -15298,17 +15426,17 @@ impl InstEncoding for OpSizeOf { pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSizeOf{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSizeOf{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx) ) @@ -15338,13 +15466,13 @@ impl InstEncoding for OpTypePipeStorage { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypePipeStorage", self.id_result.dis(ctx)) + write!(f, "{}OpTypePipeStorage", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -15388,17 +15516,17 @@ impl InstEncoding for OpConstantPipeStorage { capacity: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantPipeStorage{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpConstantPipeStorage{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packet_size.dis(ctx), self.packet_alignment.dis(ctx), @@ -15439,17 +15567,17 @@ impl InstEncoding for OpCreatePipeFromPipeStorage { pipe_storage: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCreatePipeFromPipeStorage{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCreatePipeFromPipeStorage{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pipe_storage.dis(ctx) ) @@ -15504,17 +15632,17 @@ impl InstEncoding for OpGetKernelLocalSizeForSubgroupCount { param_align: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetKernelLocalSizeForSubgroupCount{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGetKernelLocalSizeForSubgroupCount{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.subgroup_count.dis(ctx), self.invoke.dis(ctx), @@ -15569,17 +15697,17 @@ impl InstEncoding for OpGetKernelMaxNumSubgroups { param_align: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGetKernelMaxNumSubgroups{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGetKernelMaxNumSubgroups{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.invoke.dis(ctx), self.param.dis(ctx), @@ -15612,13 +15740,13 @@ impl InstEncoding for OpTypeNamedBarrier { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeNamedBarrier", self.id_result.dis(ctx)) + write!(f, "{}OpTypeNamedBarrier", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -15654,17 +15782,17 @@ impl InstEncoding for OpNamedBarrierInitialize { subgroup_count: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpNamedBarrierInitialize{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpNamedBarrierInitialize{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.subgroup_count.dis(ctx) ) @@ -15703,15 +15831,16 @@ impl InstEncoding for OpMemoryNamedBarrier { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpMemoryNamedBarrier{}{}{}", + "{}OpMemoryNamedBarrier{}{}{}", + ctx.id_result_writer(), self.named_barrier.dis(ctx), self.memory.dis(ctx), self.semantics.dis(ctx) @@ -15742,13 +15871,18 @@ impl InstEncoding for OpModuleProcessed { process: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpModuleProcessed{}", self.process.dis(ctx)) + write!( + f, + "{}OpModuleProcessed{}", + ctx.id_result_writer(), + self.process.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -15780,15 +15914,16 @@ impl InstEncoding for OpExecutionModeId { mode: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpExecutionModeId{}{}", + "{}OpExecutionModeId{}{}", + ctx.id_result_writer(), self.entry_point.dis(ctx), self.mode.dis(ctx) ) @@ -15823,15 +15958,16 @@ impl InstEncoding for OpDecorateId { decoration: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpDecorateId{}{}", + "{}OpDecorateId{}{}", + ctx.id_result_writer(), self.target.dis(ctx), self.decoration.dis(ctx) ) @@ -15870,17 +16006,17 @@ impl InstEncoding for OpGroupNonUniformElect { execution: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformElect{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformElect{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx) ) @@ -15923,17 +16059,17 @@ impl InstEncoding for OpGroupNonUniformAll { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformAll{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformAll{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.predicate.dis(ctx) @@ -15977,17 +16113,17 @@ impl InstEncoding for OpGroupNonUniformAny { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformAny{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformAny{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.predicate.dis(ctx) @@ -16031,17 +16167,17 @@ impl InstEncoding for OpGroupNonUniformAllEqual { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformAllEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformAllEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx) @@ -16089,17 +16225,17 @@ impl InstEncoding for OpGroupNonUniformBroadcast { invocation_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -16144,17 +16280,17 @@ impl InstEncoding for OpGroupNonUniformBroadcastFirst { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBroadcastFirst{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBroadcastFirst{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx) @@ -16198,17 +16334,17 @@ impl InstEncoding for OpGroupNonUniformBallot { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBallot{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBallot{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.predicate.dis(ctx) @@ -16252,17 +16388,17 @@ impl InstEncoding for OpGroupNonUniformInverseBallot { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformInverseBallot{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformInverseBallot{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx) @@ -16310,17 +16446,17 @@ impl InstEncoding for OpGroupNonUniformBallotBitExtract { index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBallotBitExtract{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBallotBitExtract{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -16369,17 +16505,17 @@ impl InstEncoding for OpGroupNonUniformBallotBitCount { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBallotBitCount{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBallotBitCount{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -16424,17 +16560,17 @@ impl InstEncoding for OpGroupNonUniformBallotFindLSB { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBallotFindLSB{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBallotFindLSB{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx) @@ -16478,17 +16614,17 @@ impl InstEncoding for OpGroupNonUniformBallotFindMSB { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBallotFindMSB{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBallotFindMSB{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx) @@ -16536,17 +16672,17 @@ impl InstEncoding for OpGroupNonUniformShuffle { invocation_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformShuffle{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformShuffle{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -16595,17 +16731,17 @@ impl InstEncoding for OpGroupNonUniformShuffleXor { mask: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformShuffleXor{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformShuffleXor{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -16654,17 +16790,17 @@ impl InstEncoding for OpGroupNonUniformShuffleUp { delta: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformShuffleUp{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformShuffleUp{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -16713,17 +16849,17 @@ impl InstEncoding for OpGroupNonUniformShuffleDown { delta: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformShuffleDown{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformShuffleDown{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -16776,17 +16912,17 @@ impl InstEncoding for OpGroupNonUniformIAdd { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformIAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformIAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -16840,17 +16976,17 @@ impl InstEncoding for OpGroupNonUniformFAdd { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformFAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformFAdd{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -16904,17 +17040,17 @@ impl InstEncoding for OpGroupNonUniformIMul { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformIMul{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformIMul{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -16968,17 +17104,17 @@ impl InstEncoding for OpGroupNonUniformFMul { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformFMul{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformFMul{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17032,17 +17168,17 @@ impl InstEncoding for OpGroupNonUniformSMin { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformSMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformSMin{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17096,17 +17232,17 @@ impl InstEncoding for OpGroupNonUniformUMin { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformUMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformUMin{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17160,17 +17296,17 @@ impl InstEncoding for OpGroupNonUniformFMin { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformFMin{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformFMin{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17224,17 +17360,17 @@ impl InstEncoding for OpGroupNonUniformSMax { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformSMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformSMax{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17288,17 +17424,17 @@ impl InstEncoding for OpGroupNonUniformUMax { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformUMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformUMax{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17352,17 +17488,17 @@ impl InstEncoding for OpGroupNonUniformFMax { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformFMax{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformFMax{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17416,17 +17552,17 @@ impl InstEncoding for OpGroupNonUniformBitwiseAnd { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBitwiseAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBitwiseAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17480,17 +17616,17 @@ impl InstEncoding for OpGroupNonUniformBitwiseOr { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBitwiseOr{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBitwiseOr{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17544,17 +17680,17 @@ impl InstEncoding for OpGroupNonUniformBitwiseXor { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformBitwiseXor{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformBitwiseXor{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17608,17 +17744,17 @@ impl InstEncoding for OpGroupNonUniformLogicalAnd { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformLogicalAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformLogicalAnd{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17672,17 +17808,17 @@ impl InstEncoding for OpGroupNonUniformLogicalOr { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformLogicalOr{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformLogicalOr{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17736,17 +17872,17 @@ impl InstEncoding for OpGroupNonUniformLogicalXor { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformLogicalXor{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformLogicalXor{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -17796,17 +17932,17 @@ impl InstEncoding for OpGroupNonUniformQuadBroadcast { index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformQuadBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformQuadBroadcast{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -17855,17 +17991,17 @@ impl InstEncoding for OpGroupNonUniformQuadSwap { direction: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformQuadSwap{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformQuadSwap{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -17906,17 +18042,17 @@ impl InstEncoding for OpCopyLogical { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCopyLogical{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCopyLogical{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -17959,17 +18095,17 @@ impl InstEncoding for OpPtrEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpPtrEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpPtrEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -18013,17 +18149,17 @@ impl InstEncoding for OpPtrNotEqual { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpPtrNotEqual{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpPtrNotEqual{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -18067,17 +18203,17 @@ impl InstEncoding for OpPtrDiff { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpPtrDiff{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpPtrDiff{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -18121,17 +18257,17 @@ impl InstEncoding for OpColorAttachmentReadEXT { sample: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpColorAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpColorAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.attachment.dis(ctx), self.sample.dis(ctx) @@ -18171,17 +18307,17 @@ impl InstEncoding for OpDepthAttachmentReadEXT { sample: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpDepthAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpDepthAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sample.dis(ctx) ) @@ -18220,17 +18356,17 @@ impl InstEncoding for OpStencilAttachmentReadEXT { sample: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpStencilAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpStencilAttachmentReadEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sample.dis(ctx) ) @@ -18273,16 +18409,16 @@ impl InstEncoding for OpTypeTensorARM { shape: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeTensorARM{}{}{}", - self.id_result.dis(ctx), + "{}OpTypeTensorARM{}{}{}", + ctx.id_result_writer(), self.element_type.dis(ctx), self.rank.dis(ctx), self.shape.dis(ctx) @@ -18330,17 +18466,17 @@ impl InstEncoding for OpTensorReadARM { tensor_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorReadARM{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpTensorReadARM{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor.dis(ctx), self.coordinates.dis(ctx), @@ -18385,15 +18521,16 @@ impl InstEncoding for OpTensorWriteARM { tensor_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpTensorWriteARM{}{}{}{}", + "{}OpTensorWriteARM{}{}{}{}", + ctx.id_result_writer(), self.tensor.dis(ctx), self.coordinates.dis(ctx), self.object.dis(ctx), @@ -18438,17 +18575,17 @@ impl InstEncoding for OpTensorQuerySizeARM { dimension: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorQuerySizeARM{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpTensorQuerySizeARM{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor.dis(ctx), self.dimension.dis(ctx) @@ -18488,17 +18625,17 @@ impl InstEncoding for OpGraphConstantARM { graph_constant_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGraphConstantARM{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGraphConstantARM{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.graph_constant_id.dis(ctx) ) @@ -18537,15 +18674,16 @@ impl InstEncoding for OpGraphEntryPointARM { interface: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpGraphEntryPointARM{}{}{}", + "{}OpGraphEntryPointARM{}{}{}", + ctx.id_result_writer(), self.graph.dis(ctx), self.name.dis(ctx), self.interface.dis(ctx) @@ -18581,17 +18719,17 @@ impl InstEncoding for OpGraphARM { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGraphARM{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGraphARM{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -18633,17 +18771,17 @@ impl InstEncoding for OpGraphInputARM { element_index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGraphInputARM{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpGraphInputARM{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input_index.dis(ctx), self.element_index.dis(ctx) @@ -18683,15 +18821,16 @@ impl InstEncoding for OpGraphSetOutputARM { element_index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpGraphSetOutputARM{}{}{}", + "{}OpGraphSetOutputARM{}{}{}", + ctx.id_result_writer(), self.value.dis(ctx), self.output_index.dis(ctx), self.element_index.dis(ctx) @@ -18717,8 +18856,13 @@ impl InstEncoding for OpGraphEndARM { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpGraphEndARM") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpGraphEndARM", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -18754,16 +18898,16 @@ impl InstEncoding for OpTypeGraphARM { in_out_types: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeGraphARM{}{}", - self.id_result.dis(ctx), + "{}OpTypeGraphARM{}{}", + ctx.id_result_writer(), self.num_inputs.dis(ctx), self.in_out_types.dis(ctx) ) @@ -18788,8 +18932,13 @@ impl InstEncoding for OpTerminateInvocation { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpTerminateInvocation") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpTerminateInvocation", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -18821,16 +18970,16 @@ impl InstEncoding for OpTypeUntypedPointerKHR { storage_class: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeUntypedPointerKHR{}", - self.id_result.dis(ctx), + "{}OpTypeUntypedPointerKHR{}", + ctx.id_result_writer(), self.storage_class.dis(ctx) ) } @@ -18876,17 +19025,17 @@ impl InstEncoding for OpUntypedVariableKHR { initializer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedVariableKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedVariableKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.storage_class.dis(ctx), self.data_type.dis(ctx), @@ -18935,17 +19084,17 @@ impl InstEncoding for OpUntypedAccessChainKHR { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base_type.dis(ctx), self.base.dis(ctx), @@ -18994,17 +19143,17 @@ impl InstEncoding for OpUntypedInBoundsAccessChainKHR { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedInBoundsAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedInBoundsAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base_type.dis(ctx), self.base.dis(ctx), @@ -19045,17 +19194,17 @@ impl InstEncoding for OpSubgroupBallotKHR { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupBallotKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupBallotKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.predicate.dis(ctx) ) @@ -19094,17 +19243,17 @@ impl InstEncoding for OpSubgroupFirstInvocationKHR { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupFirstInvocationKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupFirstInvocationKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx) ) @@ -19155,17 +19304,17 @@ impl InstEncoding for OpUntypedPtrAccessChainKHR { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedPtrAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedPtrAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base_type.dis(ctx), self.base.dis(ctx), @@ -19219,17 +19368,17 @@ impl InstEncoding for OpUntypedInBoundsPtrAccessChainKHR { indexes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedInBoundsPtrAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedInBoundsPtrAccessChainKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base_type.dis(ctx), self.base.dis(ctx), @@ -19279,17 +19428,17 @@ impl InstEncoding for OpUntypedArrayLengthKHR { array_member: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedArrayLengthKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedArrayLengthKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.structure.dis(ctx), self.pointer.dis(ctx), @@ -19338,15 +19487,16 @@ impl InstEncoding for OpUntypedPrefetchKHR { cache_type: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpUntypedPrefetchKHR{}{}{}{}{}", + "{}OpUntypedPrefetchKHR{}{}{}{}{}", + ctx.id_result_writer(), self.pointer_type.dis(ctx), self.num_bytes.dis(ctx), self.rw.dis(ctx), @@ -19396,17 +19546,17 @@ impl InstEncoding for OpFmaKHR { operand_3: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFmaKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpFmaKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx), @@ -19447,17 +19597,17 @@ impl InstEncoding for OpSubgroupAllKHR { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAllKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAllKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.predicate.dis(ctx) ) @@ -19496,17 +19646,17 @@ impl InstEncoding for OpSubgroupAnyKHR { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAnyKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAnyKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.predicate.dis(ctx) ) @@ -19545,17 +19695,17 @@ impl InstEncoding for OpSubgroupAllEqualKHR { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAllEqualKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAllEqualKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.predicate.dis(ctx) ) @@ -19606,17 +19756,17 @@ impl InstEncoding for OpGroupNonUniformRotateKHR { cluster_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformRotateKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformRotateKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.value.dis(ctx), @@ -19662,17 +19812,17 @@ impl InstEncoding for OpSubgroupReadInvocationKHR { index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupReadInvocationKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupReadInvocationKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx), self.index.dis(ctx) @@ -19720,17 +19870,17 @@ impl InstEncoding for OpExtInstWithForwardRefsKHR { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpExtInstWithForwardRefsKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpExtInstWithForwardRefsKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.set.dis(ctx), self.instruction.dis(ctx), @@ -19803,17 +19953,17 @@ impl InstEncoding for OpUntypedGroupAsyncCopyKHR { source_memory_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedGroupAsyncCopyKHR{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedGroupAsyncCopyKHR{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.destination.dis(ctx), @@ -19892,15 +20042,16 @@ impl InstEncoding for OpTraceRayKHR { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpTraceRayKHR{}{}{}{}{}{}{}{}{}{}{}", + "{}OpTraceRayKHR{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.accel.dis(ctx), self.ray_flags.dis(ctx), self.cull_mask.dis(ctx), @@ -19944,15 +20095,16 @@ impl InstEncoding for OpExecuteCallableKHR { callable_data: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpExecuteCallableKHR{}{}", + "{}OpExecuteCallableKHR{}{}", + ctx.id_result_writer(), self.sbt_index.dis(ctx), self.callable_data.dis(ctx) ) @@ -19991,17 +20143,17 @@ impl InstEncoding for OpConvertUToAccelerationStructureKHR { accel: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertUToAccelerationStructureKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertUToAccelerationStructureKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.accel.dis(ctx) ) @@ -20026,8 +20178,13 @@ impl InstEncoding for OpIgnoreIntersectionKHR { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpIgnoreIntersectionKHR") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpIgnoreIntersectionKHR", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -20049,8 +20206,13 @@ impl InstEncoding for OpTerminateRayKHR { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpTerminateRayKHR") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpTerminateRayKHR", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -20094,17 +20256,17 @@ impl InstEncoding for OpSDot { packed_vector_format: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSDot{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSDot{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx), @@ -20153,17 +20315,17 @@ impl InstEncoding for OpUDot { packed_vector_format: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUDot{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpUDot{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx), @@ -20212,17 +20374,17 @@ impl InstEncoding for OpSUDot { packed_vector_format: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSUDot{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSUDot{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx), @@ -20275,17 +20437,17 @@ impl InstEncoding for OpSDotAccSat { packed_vector_format: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx), @@ -20339,17 +20501,17 @@ impl InstEncoding for OpUDotAccSat { packed_vector_format: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpUDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx), @@ -20403,17 +20565,17 @@ impl InstEncoding for OpSUDotAccSat { packed_vector_format: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSUDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSUDotAccSat{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.vector_1.dis(ctx), self.vector_2.dis(ctx), @@ -20467,16 +20629,16 @@ impl InstEncoding for OpTypeCooperativeMatrixKHR { usage: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeCooperativeMatrixKHR{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpTypeCooperativeMatrixKHR{}{}{}{}{}", + ctx.id_result_writer(), self.component_type.dis(ctx), self.scope.dis(ctx), self.rows.dis(ctx), @@ -20530,17 +20692,17 @@ impl InstEncoding for OpCooperativeMatrixLoadKHR { memory_operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixLoadKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixLoadKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory_layout.dis(ctx), @@ -20590,15 +20752,16 @@ impl InstEncoding for OpCooperativeMatrixStoreKHR { memory_operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCooperativeMatrixStoreKHR{}{}{}{}{}", + "{}OpCooperativeMatrixStoreKHR{}{}{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.object.dis(ctx), self.memory_layout.dis(ctx), @@ -20652,17 +20815,17 @@ impl InstEncoding for OpCooperativeMatrixMulAddKHR { cooperative_matrix_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixMulAddKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixMulAddKHR{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.b.dis(ctx), @@ -20704,17 +20867,17 @@ impl InstEncoding for OpCooperativeMatrixLengthKHR { ty: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixLengthKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixLengthKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ty.dis(ctx) ) @@ -20753,17 +20916,17 @@ impl InstEncoding for OpConstantCompositeReplicateEXT { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantCompositeReplicateEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConstantCompositeReplicateEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx) ) @@ -20802,17 +20965,17 @@ impl InstEncoding for OpSpecConstantCompositeReplicateEXT { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstantCompositeReplicateEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSpecConstantCompositeReplicateEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx) ) @@ -20851,17 +21014,17 @@ impl InstEncoding for OpCompositeConstructReplicateEXT { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCompositeConstructReplicateEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCompositeConstructReplicateEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx) ) @@ -20891,13 +21054,13 @@ impl InstEncoding for OpTypeRayQueryKHR { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeRayQueryKHR", self.id_result.dis(ctx)) + write!(f, "{}OpTypeRayQueryKHR", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -20953,15 +21116,16 @@ impl InstEncoding for OpRayQueryInitializeKHR { ray_t_max: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpRayQueryInitializeKHR{}{}{}{}{}{}{}{}", + "{}OpRayQueryInitializeKHR{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.ray_query.dis(ctx), self.accel.dis(ctx), self.ray_flags.dis(ctx), @@ -20997,13 +21161,18 @@ impl InstEncoding for OpRayQueryTerminateKHR { ray_query: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpRayQueryTerminateKHR{}", self.ray_query.dis(ctx)) + write!( + f, + "{}OpRayQueryTerminateKHR{}", + ctx.id_result_writer(), + self.ray_query.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -21034,15 +21203,16 @@ impl InstEncoding for OpRayQueryGenerateIntersectionKHR { hit_t: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpRayQueryGenerateIntersectionKHR{}{}", + "{}OpRayQueryGenerateIntersectionKHR{}{}", + ctx.id_result_writer(), self.ray_query.dis(ctx), self.hit_t.dis(ctx) ) @@ -21072,15 +21242,16 @@ impl InstEncoding for OpRayQueryConfirmIntersectionKHR { ray_query: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpRayQueryConfirmIntersectionKHR{}", + "{}OpRayQueryConfirmIntersectionKHR{}", + ctx.id_result_writer(), self.ray_query.dis(ctx) ) } @@ -21118,17 +21289,17 @@ impl InstEncoding for OpRayQueryProceedKHR { ray_query: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryProceedKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpRayQueryProceedKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx) ) @@ -21171,17 +21342,17 @@ impl InstEncoding for OpRayQueryGetIntersectionTypeKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionTypeKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionTypeKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -21229,17 +21400,17 @@ impl InstEncoding for OpImageSampleWeightedQCOM { weights: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleWeightedQCOM{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleWeightedQCOM{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.texture.dis(ctx), self.coordinates.dis(ctx), @@ -21288,17 +21459,17 @@ impl InstEncoding for OpImageBoxFilterQCOM { box_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageBoxFilterQCOM{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageBoxFilterQCOM{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.texture.dis(ctx), self.coordinates.dis(ctx), @@ -21355,17 +21526,17 @@ impl InstEncoding for OpImageBlockMatchSSDQCOM { block_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageBlockMatchSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageBlockMatchSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.target.dis(ctx), self.target_coordinates.dis(ctx), @@ -21424,17 +21595,17 @@ impl InstEncoding for OpImageBlockMatchSADQCOM { block_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageBlockMatchSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageBlockMatchSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.target.dis(ctx), self.target_coordinates.dis(ctx), @@ -21477,17 +21648,17 @@ impl InstEncoding for OpBitCastArrayQCOM { source_array: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitCastArrayQCOM{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpBitCastArrayQCOM{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.source_array.dis(ctx) ) @@ -21542,17 +21713,17 @@ impl InstEncoding for OpImageBlockMatchWindowSSDQCOM { block_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageBlockMatchWindowSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageBlockMatchWindowSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.target_sampled_image.dis(ctx), self.target_coordinates.dis(ctx), @@ -21611,17 +21782,17 @@ impl InstEncoding for OpImageBlockMatchWindowSADQCOM { block_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageBlockMatchWindowSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageBlockMatchWindowSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.target_sampled_image.dis(ctx), self.target_coordinates.dis(ctx), @@ -21680,17 +21851,17 @@ impl InstEncoding for OpImageBlockMatchGatherSSDQCOM { block_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageBlockMatchGatherSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageBlockMatchGatherSSDQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.target_sampled_image.dis(ctx), self.target_coordinates.dis(ctx), @@ -21749,17 +21920,17 @@ impl InstEncoding for OpImageBlockMatchGatherSADQCOM { block_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageBlockMatchGatherSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageBlockMatchGatherSADQCOM{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.target_sampled_image.dis(ctx), self.target_coordinates.dis(ctx), @@ -21802,17 +21973,17 @@ impl InstEncoding for OpCompositeConstructCoopMatQCOM { source_array: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCompositeConstructCoopMatQCOM{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCompositeConstructCoopMatQCOM{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.source_array.dis(ctx) ) @@ -21851,17 +22022,17 @@ impl InstEncoding for OpCompositeExtractCoopMatQCOM { source_cooperative_matrix: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCompositeExtractCoopMatQCOM{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCompositeExtractCoopMatQCOM{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.source_cooperative_matrix.dis(ctx) ) @@ -21904,17 +22075,17 @@ impl InstEncoding for OpExtractSubArrayQCOM { index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpExtractSubArrayQCOM{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpExtractSubArrayQCOM{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.source_array.dis(ctx), self.index.dis(ctx) @@ -21962,17 +22133,17 @@ impl InstEncoding for OpGroupIAddNonUniformAMD { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupIAddNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupIAddNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -22021,17 +22192,17 @@ impl InstEncoding for OpGroupFAddNonUniformAMD { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupFAddNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupFAddNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -22080,17 +22251,17 @@ impl InstEncoding for OpGroupFMinNonUniformAMD { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupFMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupFMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -22139,17 +22310,17 @@ impl InstEncoding for OpGroupUMinNonUniformAMD { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupUMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupUMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -22198,17 +22369,17 @@ impl InstEncoding for OpGroupSMinNonUniformAMD { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupSMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupSMinNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -22257,17 +22428,17 @@ impl InstEncoding for OpGroupFMaxNonUniformAMD { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupFMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupFMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -22316,17 +22487,17 @@ impl InstEncoding for OpGroupUMaxNonUniformAMD { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupUMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupUMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -22375,17 +22546,17 @@ impl InstEncoding for OpGroupSMaxNonUniformAMD { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupSMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupSMaxNonUniformAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -22430,17 +22601,17 @@ impl InstEncoding for OpFragmentMaskFetchAMD { coordinate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFragmentMaskFetchAMD{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpFragmentMaskFetchAMD{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx) @@ -22488,17 +22659,17 @@ impl InstEncoding for OpFragmentFetchAMD { fragment_index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFragmentFetchAMD{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpFragmentFetchAMD{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx), @@ -22539,17 +22710,17 @@ impl InstEncoding for OpReadClockKHR { scope: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpReadClockKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpReadClockKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.scope.dis(ctx) ) @@ -22596,17 +22767,17 @@ impl InstEncoding for OpAllocateNodePayloadsAMDX { node_index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAllocateNodePayloadsAMDX{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpAllocateNodePayloadsAMDX{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.visibility.dis(ctx), self.payload_count.dis(ctx), @@ -22638,15 +22809,16 @@ impl InstEncoding for OpEnqueueNodePayloadsAMDX { payload_array: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpEnqueueNodePayloadsAMDX{}", + "{}OpEnqueueNodePayloadsAMDX{}", + ctx.id_result_writer(), self.payload_array.dis(ctx) ) } @@ -22680,16 +22852,16 @@ impl InstEncoding for OpTypeNodePayloadArrayAMDX { payload_type: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeNodePayloadArrayAMDX{}", - self.id_result.dis(ctx), + "{}OpTypeNodePayloadArrayAMDX{}", + ctx.id_result_writer(), self.payload_type.dis(ctx) ) } @@ -22727,17 +22899,17 @@ impl InstEncoding for OpFinishWritingNodePayloadAMDX { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFinishWritingNodePayloadAMDX{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFinishWritingNodePayloadAMDX{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -22776,17 +22948,17 @@ impl InstEncoding for OpNodePayloadArrayLengthAMDX { payload_array: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpNodePayloadArrayLengthAMDX{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpNodePayloadArrayLengthAMDX{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload_array.dis(ctx) ) @@ -22829,17 +23001,17 @@ impl InstEncoding for OpIsNodePayloadValidAMDX { node_index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIsNodePayloadValidAMDX{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIsNodePayloadValidAMDX{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload_type.dis(ctx), self.node_index.dis(ctx) @@ -22875,16 +23047,16 @@ impl InstEncoding for OpConstantStringAMDX { literal_string: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpConstantStringAMDX{}", - self.id_result.dis(ctx), + "{}OpConstantStringAMDX{}", + ctx.id_result_writer(), self.literal_string.dis(ctx) ) } @@ -22918,16 +23090,16 @@ impl InstEncoding for OpSpecConstantStringAMDX { literal_string: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpSpecConstantStringAMDX{}", - self.id_result.dis(ctx), + "{}OpSpecConstantStringAMDX{}", + ctx.id_result_writer(), self.literal_string.dis(ctx) ) } @@ -22965,17 +23137,17 @@ impl InstEncoding for OpGroupNonUniformQuadAllKHR { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformQuadAllKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformQuadAllKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.predicate.dis(ctx) ) @@ -23014,17 +23186,17 @@ impl InstEncoding for OpGroupNonUniformQuadAnyKHR { predicate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformQuadAnyKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformQuadAnyKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.predicate.dis(ctx) ) @@ -23059,16 +23231,16 @@ impl InstEncoding for OpTypeBufferEXT { storage_class: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeBufferEXT{}", - self.id_result.dis(ctx), + "{}OpTypeBufferEXT{}", + ctx.id_result_writer(), self.storage_class.dis(ctx) ) } @@ -23106,17 +23278,17 @@ impl InstEncoding for OpBufferPointerEXT { buffer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBufferPointerEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpBufferPointerEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.buffer.dis(ctx) ) @@ -23167,17 +23339,17 @@ impl InstEncoding for OpUntypedImageTexelPointerEXT { sample: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedImageTexelPointerEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedImageTexelPointerEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image_type.dis(ctx), self.image.dis(ctx), @@ -23219,15 +23391,16 @@ impl InstEncoding for OpMemberDecorateIdEXT { decoration: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpMemberDecorateIdEXT{}{}{}", + "{}OpMemberDecorateIdEXT{}{}{}", + ctx.id_result_writer(), self.structure_type.dis(ctx), self.member.dis(ctx), self.decoration.dis(ctx) @@ -23267,17 +23440,17 @@ impl InstEncoding for OpConstantSizeOfEXT { ty: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantSizeOfEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConstantSizeOfEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ty.dis(ctx) ) @@ -23360,15 +23533,16 @@ impl InstEncoding for OpHitObjectRecordHitMotionNV { hit_object_attributes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordHitMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectRecordHitMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.instance_id.dis(ctx), @@ -23459,15 +23633,16 @@ impl InstEncoding for OpHitObjectRecordHitWithIndexMotionNV { hit_object_attributes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordHitWithIndexMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectRecordHitWithIndexMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.instance_id.dis(ctx), @@ -23533,15 +23708,16 @@ impl InstEncoding for OpHitObjectRecordMissMotionNV { current_time: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordMissMotionNV{}{}{}{}{}{}{}", + "{}OpHitObjectRecordMissMotionNV{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.sbt_index.dis(ctx), self.origin.dis(ctx), @@ -23585,17 +23761,17 @@ impl InstEncoding for OpHitObjectGetWorldToObjectNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetWorldToObjectNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetWorldToObjectNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -23634,17 +23810,17 @@ impl InstEncoding for OpHitObjectGetObjectToWorldNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetObjectToWorldNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetObjectToWorldNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -23683,17 +23859,17 @@ impl InstEncoding for OpHitObjectGetObjectRayDirectionNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetObjectRayDirectionNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetObjectRayDirectionNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -23732,17 +23908,17 @@ impl InstEncoding for OpHitObjectGetObjectRayOriginNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetObjectRayOriginNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetObjectRayOriginNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -23821,15 +23997,16 @@ impl InstEncoding for OpHitObjectTraceRayMotionNV { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectTraceRayMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectTraceRayMotionNV{}{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.ray_flags.dis(ctx), @@ -23879,17 +24056,17 @@ impl InstEncoding for OpHitObjectGetShaderRecordBufferHandleNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetShaderRecordBufferHandleNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetShaderRecordBufferHandleNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -23928,17 +24105,17 @@ impl InstEncoding for OpHitObjectGetShaderBindingTableRecordIndexNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetShaderBindingTableRecordIndexNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetShaderBindingTableRecordIndexNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -23968,13 +24145,18 @@ impl InstEncoding for OpHitObjectRecordEmptyNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpHitObjectRecordEmptyNV{}", self.hit_object.dis(ctx)) + write!( + f, + "{}OpHitObjectRecordEmptyNV{}", + ctx.id_result_writer(), + self.hit_object.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -24046,15 +24228,16 @@ impl InstEncoding for OpHitObjectTraceRayNV { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectTraceRayNV{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectTraceRayNV{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.ray_flags.dis(ctx), @@ -24143,15 +24326,16 @@ impl InstEncoding for OpHitObjectRecordHitNV { hit_object_attributes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordHitNV{}{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectRecordHitNV{}{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.instance_id.dis(ctx), @@ -24237,15 +24421,16 @@ impl InstEncoding for OpHitObjectRecordHitWithIndexNV { hit_object_attributes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordHitWithIndexNV{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectRecordHitWithIndexNV{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.instance_id.dis(ctx), @@ -24306,15 +24491,16 @@ impl InstEncoding for OpHitObjectRecordMissNV { t_max: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordMissNV{}{}{}{}{}{}", + "{}OpHitObjectRecordMissNV{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.sbt_index.dis(ctx), self.origin.dis(ctx), @@ -24353,15 +24539,16 @@ impl InstEncoding for OpHitObjectExecuteShaderNV { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectExecuteShaderNV{}{}", + "{}OpHitObjectExecuteShaderNV{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.payload.dis(ctx) ) @@ -24400,17 +24587,17 @@ impl InstEncoding for OpHitObjectGetCurrentTimeNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetCurrentTimeNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetCurrentTimeNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24445,15 +24632,16 @@ impl InstEncoding for OpHitObjectGetAttributesNV { hit_object_attribute: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectGetAttributesNV{}{}", + "{}OpHitObjectGetAttributesNV{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.hit_object_attribute.dis(ctx) ) @@ -24492,17 +24680,17 @@ impl InstEncoding for OpHitObjectGetHitKindNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetHitKindNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetHitKindNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24541,17 +24729,17 @@ impl InstEncoding for OpHitObjectGetPrimitiveIndexNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetPrimitiveIndexNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetPrimitiveIndexNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24590,17 +24778,17 @@ impl InstEncoding for OpHitObjectGetGeometryIndexNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetGeometryIndexNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetGeometryIndexNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24639,17 +24827,17 @@ impl InstEncoding for OpHitObjectGetInstanceIdNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetInstanceIdNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetInstanceIdNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24688,17 +24876,17 @@ impl InstEncoding for OpHitObjectGetInstanceCustomIndexNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetInstanceCustomIndexNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetInstanceCustomIndexNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24737,17 +24925,17 @@ impl InstEncoding for OpHitObjectGetWorldRayDirectionNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetWorldRayDirectionNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetWorldRayDirectionNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24786,17 +24974,17 @@ impl InstEncoding for OpHitObjectGetWorldRayOriginNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetWorldRayOriginNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetWorldRayOriginNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24835,17 +25023,17 @@ impl InstEncoding for OpHitObjectGetRayTMaxNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetRayTMaxNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetRayTMaxNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24884,17 +25072,17 @@ impl InstEncoding for OpHitObjectGetRayTMinNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetRayTMinNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetRayTMinNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24933,17 +25121,17 @@ impl InstEncoding for OpHitObjectIsEmptyNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectIsEmptyNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectIsEmptyNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -24982,17 +25170,17 @@ impl InstEncoding for OpHitObjectIsHitNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectIsHitNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectIsHitNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -25031,17 +25219,17 @@ impl InstEncoding for OpHitObjectIsMissNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectIsMissNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectIsMissNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -25080,15 +25268,16 @@ impl InstEncoding for OpReorderThreadWithHitObjectNV { bits: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpReorderThreadWithHitObjectNV{}{}{}", + "{}OpReorderThreadWithHitObjectNV{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.hint.dis(ctx), self.bits.dis(ctx) @@ -25122,15 +25311,16 @@ impl InstEncoding for OpReorderThreadWithHintNV { bits: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpReorderThreadWithHintNV{}{}", + "{}OpReorderThreadWithHintNV{}{}", + ctx.id_result_writer(), self.hint.dis(ctx), self.bits.dis(ctx) ) @@ -25160,13 +25350,13 @@ impl InstEncoding for OpTypeHitObjectNV { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeHitObjectNV", self.id_result.dis(ctx)) + write!(f, "{}OpTypeHitObjectNV", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -25218,17 +25408,17 @@ impl InstEncoding for OpImageSampleFootprintNV { image_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpImageSampleFootprintNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpImageSampleFootprintNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sampled_image.dis(ctx), self.coordinate.dis(ctx), @@ -25271,16 +25461,16 @@ impl InstEncoding for OpTypeVectorIdEXT { component_count: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeVectorIdEXT{}{}", - self.id_result.dis(ctx), + "{}OpTypeVectorIdEXT{}{}", + ctx.id_result_writer(), self.component_type.dis(ctx), self.component_count.dis(ctx) ) @@ -25359,17 +25549,17 @@ impl InstEncoding for OpCooperativeVectorMatrixMulNV { cooperative_matrix_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeVectorMatrixMulNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeVectorMatrixMulNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.input_interpretation.dis(ctx), @@ -25434,15 +25624,16 @@ impl InstEncoding for OpCooperativeVectorOuterProductAccumulateNV { matrix_stride: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCooperativeVectorOuterProductAccumulateNV{}{}{}{}{}{}{}", + "{}OpCooperativeVectorOuterProductAccumulateNV{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.offset.dis(ctx), self.a.dis(ctx), @@ -25486,15 +25677,16 @@ impl InstEncoding for OpCooperativeVectorReduceSumAccumulateNV { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCooperativeVectorReduceSumAccumulateNV{}{}{}", + "{}OpCooperativeVectorReduceSumAccumulateNV{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.offset.dis(ctx), self.v.dis(ctx) @@ -25586,17 +25778,17 @@ impl InstEncoding for OpCooperativeVectorMatrixMulAddNV { cooperative_matrix_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeVectorMatrixMulAddNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeVectorMatrixMulAddNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.input_interpretation.dis(ctx), @@ -25648,17 +25840,17 @@ impl InstEncoding for OpCooperativeMatrixConvertNV { matrix: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixConvertNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixConvertNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.matrix.dis(ctx) ) @@ -25701,15 +25893,16 @@ impl InstEncoding for OpEmitMeshTasksEXT { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpEmitMeshTasksEXT{}{}{}{}", + "{}OpEmitMeshTasksEXT{}{}{}{}", + ctx.id_result_writer(), self.group_count_x.dis(ctx), self.group_count_y.dis(ctx), self.group_count_z.dis(ctx), @@ -25746,15 +25939,16 @@ impl InstEncoding for OpSetMeshOutputsEXT { primitive_count: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSetMeshOutputsEXT{}{}", + "{}OpSetMeshOutputsEXT{}{}", + ctx.id_result_writer(), self.vertex_count.dis(ctx), self.primitive_count.dis(ctx) ) @@ -25793,17 +25987,17 @@ impl InstEncoding for OpGroupNonUniformPartitionEXT { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupNonUniformPartitionEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpGroupNonUniformPartitionEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx) ) @@ -25838,15 +26032,16 @@ impl InstEncoding for OpWritePackedPrimitiveIndices4x8NV { packed_indices: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpWritePackedPrimitiveIndices4x8NV{}{}", + "{}OpWritePackedPrimitiveIndices4x8NV{}{}", + ctx.id_result_writer(), self.index_offset.dis(ctx), self.packed_indices.dis(ctx) ) @@ -25901,17 +26096,17 @@ impl InstEncoding for OpFetchMicroTriangleVertexPositionNV { barycentric: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFetchMicroTriangleVertexPositionNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFetchMicroTriangleVertexPositionNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.accel.dis(ctx), self.instance_id.dis(ctx), @@ -25970,17 +26165,17 @@ impl InstEncoding for OpFetchMicroTriangleVertexBarycentricNV { barycentric: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFetchMicroTriangleVertexBarycentricNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFetchMicroTriangleVertexBarycentricNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.accel.dis(ctx), self.instance_id.dis(ctx), @@ -26031,17 +26226,17 @@ impl InstEncoding for OpCooperativeVectorLoadNV { memory_access: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeVectorLoadNV{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeVectorLoadNV{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.offset.dis(ctx), @@ -26086,15 +26281,16 @@ impl InstEncoding for OpCooperativeVectorStoreNV { memory_access: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCooperativeVectorStoreNV{}{}{}{}", + "{}OpCooperativeVectorStoreNV{}{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.offset.dis(ctx), self.object.dis(ctx), @@ -26139,15 +26335,16 @@ impl InstEncoding for OpHitObjectRecordFromQueryEXT { hit_object_attributes: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordFromQueryEXT{}{}{}{}", + "{}OpHitObjectRecordFromQueryEXT{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.ray_query.dis(ctx), self.sbt_record_index.dis(ctx), @@ -26204,15 +26401,16 @@ impl InstEncoding for OpHitObjectRecordMissEXT { ray_tmax: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordMissEXT{}{}{}{}{}{}{}", + "{}OpHitObjectRecordMissEXT{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.ray_flags.dis(ctx), self.miss_index.dis(ctx), @@ -26276,15 +26474,16 @@ impl InstEncoding for OpHitObjectRecordMissMotionEXT { current_time: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectRecordMissMotionEXT{}{}{}{}{}{}{}{}", + "{}OpHitObjectRecordMissMotionEXT{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.ray_flags.dis(ctx), self.miss_index.dis(ctx), @@ -26329,17 +26528,17 @@ impl InstEncoding for OpHitObjectGetIntersectionTriangleVertexPositionsEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetIntersectionTriangleVertexPositionsEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetIntersectionTriangleVertexPositionsEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -26378,17 +26577,17 @@ impl InstEncoding for OpHitObjectGetRayFlagsEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetRayFlagsEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetRayFlagsEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -26423,15 +26622,16 @@ impl InstEncoding for OpHitObjectSetShaderBindingTableRecordIndexEXT { sbt_record_index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectSetShaderBindingTableRecordIndexEXT{}{}", + "{}OpHitObjectSetShaderBindingTableRecordIndexEXT{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.sbt_record_index.dis(ctx) ) @@ -26474,15 +26674,16 @@ impl InstEncoding for OpHitObjectReorderExecuteShaderEXT { bits: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectReorderExecuteShaderEXT{}{}{}{}", + "{}OpHitObjectReorderExecuteShaderEXT{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.payload.dis(ctx), self.hint.dis(ctx), @@ -26567,15 +26768,16 @@ impl InstEncoding for OpHitObjectTraceReorderExecuteEXT { bits: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectTraceReorderExecuteEXT{}{}{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectTraceReorderExecuteEXT{}{}{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.ray_flags.dis(ctx), @@ -26674,15 +26876,16 @@ impl InstEncoding for OpHitObjectTraceMotionReorderExecuteEXT { bits: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectTraceMotionReorderExecuteEXT{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectTraceMotionReorderExecuteEXT{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.ray_flags.dis(ctx), @@ -26725,13 +26928,13 @@ impl InstEncoding for OpTypeHitObjectEXT { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeHitObjectEXT", self.id_result.dis(ctx)) + write!(f, "{}OpTypeHitObjectEXT", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -26761,15 +26964,16 @@ impl InstEncoding for OpReorderThreadWithHintEXT { bits: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpReorderThreadWithHintEXT{}{}", + "{}OpReorderThreadWithHintEXT{}{}", + ctx.id_result_writer(), self.hint.dis(ctx), self.bits.dis(ctx) ) @@ -26808,15 +27012,16 @@ impl InstEncoding for OpReorderThreadWithHitObjectEXT { bits: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpReorderThreadWithHitObjectEXT{}{}{}", + "{}OpReorderThreadWithHitObjectEXT{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.hint.dis(ctx), self.bits.dis(ctx) @@ -26892,15 +27097,16 @@ impl InstEncoding for OpHitObjectTraceRayEXT { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectTraceRayEXT{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectTraceRayEXT{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.ray_flags.dis(ctx), @@ -26989,15 +27195,16 @@ impl InstEncoding for OpHitObjectTraceRayMotionEXT { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectTraceRayMotionEXT{}{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpHitObjectTraceRayMotionEXT{}{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.acceleration_structure.dis(ctx), self.ray_flags.dis(ctx), @@ -27038,13 +27245,18 @@ impl InstEncoding for OpHitObjectRecordEmptyEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpHitObjectRecordEmptyEXT{}", self.hit_object.dis(ctx)) + write!( + f, + "{}OpHitObjectRecordEmptyEXT{}", + ctx.id_result_writer(), + self.hit_object.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -27076,15 +27288,16 @@ impl InstEncoding for OpHitObjectExecuteShaderEXT { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectExecuteShaderEXT{}{}", + "{}OpHitObjectExecuteShaderEXT{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.payload.dis(ctx) ) @@ -27123,17 +27336,17 @@ impl InstEncoding for OpHitObjectGetCurrentTimeEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetCurrentTimeEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetCurrentTimeEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27168,15 +27381,16 @@ impl InstEncoding for OpHitObjectGetAttributesEXT { hit_object_attribute: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpHitObjectGetAttributesEXT{}{}", + "{}OpHitObjectGetAttributesEXT{}{}", + ctx.id_result_writer(), self.hit_object.dis(ctx), self.hit_object_attribute.dis(ctx) ) @@ -27215,17 +27429,17 @@ impl InstEncoding for OpHitObjectGetHitKindEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetHitKindEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetHitKindEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27264,17 +27478,17 @@ impl InstEncoding for OpHitObjectGetPrimitiveIndexEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetPrimitiveIndexEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetPrimitiveIndexEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27313,17 +27527,17 @@ impl InstEncoding for OpHitObjectGetGeometryIndexEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetGeometryIndexEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetGeometryIndexEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27362,17 +27576,17 @@ impl InstEncoding for OpHitObjectGetInstanceIdEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetInstanceIdEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetInstanceIdEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27411,17 +27625,17 @@ impl InstEncoding for OpHitObjectGetInstanceCustomIndexEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetInstanceCustomIndexEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetInstanceCustomIndexEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27460,17 +27674,17 @@ impl InstEncoding for OpHitObjectGetObjectRayOriginEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetObjectRayOriginEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetObjectRayOriginEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27509,17 +27723,17 @@ impl InstEncoding for OpHitObjectGetObjectRayDirectionEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetObjectRayDirectionEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetObjectRayDirectionEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27558,17 +27772,17 @@ impl InstEncoding for OpHitObjectGetWorldRayDirectionEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetWorldRayDirectionEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetWorldRayDirectionEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27607,17 +27821,17 @@ impl InstEncoding for OpHitObjectGetWorldRayOriginEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetWorldRayOriginEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetWorldRayOriginEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27656,17 +27870,17 @@ impl InstEncoding for OpHitObjectGetObjectToWorldEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetObjectToWorldEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetObjectToWorldEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27705,17 +27919,17 @@ impl InstEncoding for OpHitObjectGetWorldToObjectEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetWorldToObjectEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetWorldToObjectEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27754,17 +27968,17 @@ impl InstEncoding for OpHitObjectGetRayTMaxEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetRayTMaxEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetRayTMaxEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -27807,17 +28021,17 @@ impl InstEncoding for OpReportIntersectionKHR { hit_kind: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpReportIntersectionKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpReportIntersectionKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit.dis(ctx), self.hit_kind.dis(ctx) @@ -27843,8 +28057,13 @@ impl InstEncoding for OpIgnoreIntersectionNV { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpIgnoreIntersectionNV") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpIgnoreIntersectionNV", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -27866,8 +28085,13 @@ impl InstEncoding for OpTerminateRayNV { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpTerminateRayNV") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpTerminateRayNV", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -27935,15 +28159,16 @@ impl InstEncoding for OpTraceNV { payload_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpTraceNV{}{}{}{}{}{}{}{}{}{}{}", + "{}OpTraceNV{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.accel.dis(ctx), self.ray_flags.dis(ctx), self.cull_mask.dis(ctx), @@ -28027,15 +28252,16 @@ impl InstEncoding for OpTraceMotionNV { payload_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpTraceMotionNV{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpTraceMotionNV{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.accel.dis(ctx), self.ray_flags.dis(ctx), self.cull_mask.dis(ctx), @@ -28120,15 +28346,16 @@ impl InstEncoding for OpTraceRayMotionNV { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpTraceRayMotionNV{}{}{}{}{}{}{}{}{}{}{}{}", + "{}OpTraceRayMotionNV{}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.accel.dis(ctx), self.ray_flags.dis(ctx), self.cull_mask.dis(ctx), @@ -28181,17 +28408,17 @@ impl InstEncoding for OpRayQueryGetIntersectionTriangleVertexPositionsKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionTriangleVertexPositionsKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionTriangleVertexPositionsKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -28222,16 +28449,16 @@ impl InstEncoding for OpTypeAccelerationStructureKHR { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeAccelerationStructureKHR", - self.id_result.dis(ctx) + "{}OpTypeAccelerationStructureKHR", + ctx.id_result_writer() ) } } @@ -28264,15 +28491,16 @@ impl InstEncoding for OpExecuteCallableNV { callable_data_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpExecuteCallableNV{}{}", + "{}OpExecuteCallableNV{}{}", + ctx.id_result_writer(), self.sbt_index.dis(ctx), self.callable_data_id.dis(ctx) ) @@ -28315,17 +28543,17 @@ impl InstEncoding for OpRayQueryGetIntersectionClusterIdNV { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionClusterIdNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionClusterIdNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -28365,17 +28593,17 @@ impl InstEncoding for OpHitObjectGetClusterIdNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetClusterIdNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetClusterIdNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -28414,17 +28642,17 @@ impl InstEncoding for OpHitObjectGetRayTMinEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetRayTMinEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetRayTMinEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -28463,17 +28691,17 @@ impl InstEncoding for OpHitObjectGetShaderBindingTableRecordIndexEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetShaderBindingTableRecordIndexEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetShaderBindingTableRecordIndexEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -28512,17 +28740,17 @@ impl InstEncoding for OpHitObjectGetShaderRecordBufferHandleEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetShaderRecordBufferHandleEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetShaderRecordBufferHandleEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -28561,17 +28789,17 @@ impl InstEncoding for OpHitObjectIsEmptyEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectIsEmptyEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectIsEmptyEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -28610,17 +28838,17 @@ impl InstEncoding for OpHitObjectIsHitEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectIsHitEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectIsHitEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -28659,17 +28887,17 @@ impl InstEncoding for OpHitObjectIsMissEXT { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectIsMissEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectIsMissEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -28716,16 +28944,16 @@ impl InstEncoding for OpTypeCooperativeMatrixNV { columns: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeCooperativeMatrixNV{}{}{}{}", - self.id_result.dis(ctx), + "{}OpTypeCooperativeMatrixNV{}{}{}{}", + ctx.id_result_writer(), self.component_type.dis(ctx), self.execution.dis(ctx), self.rows.dis(ctx), @@ -28778,17 +29006,17 @@ impl InstEncoding for OpCooperativeMatrixLoadNV { memory_access: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixLoadNV{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixLoadNV{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.stride.dis(ctx), @@ -28838,15 +29066,16 @@ impl InstEncoding for OpCooperativeMatrixStoreNV { memory_access: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCooperativeMatrixStoreNV{}{}{}{}{}", + "{}OpCooperativeMatrixStoreNV{}{}{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.object.dis(ctx), self.stride.dis(ctx), @@ -28896,17 +29125,17 @@ impl InstEncoding for OpCooperativeMatrixMulAddNV { c: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixMulAddNV{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixMulAddNV{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.b.dis(ctx), @@ -28947,17 +29176,17 @@ impl InstEncoding for OpCooperativeMatrixLengthNV { ty: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixLengthNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixLengthNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ty.dis(ctx) ) @@ -28982,8 +29211,13 @@ impl InstEncoding for OpBeginInvocationInterlockEXT { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpBeginInvocationInterlockEXT") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpBeginInvocationInterlockEXT", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -29005,8 +29239,13 @@ impl InstEncoding for OpEndInvocationInterlockEXT { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpEndInvocationInterlockEXT") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpEndInvocationInterlockEXT", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -29050,17 +29289,17 @@ impl InstEncoding for OpCooperativeMatrixReduceNV { combine_func: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixReduceNV{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixReduceNV{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.matrix.dis(ctx), self.reduce.dis(ctx), @@ -29117,17 +29356,17 @@ impl InstEncoding for OpCooperativeMatrixLoadTensorNV { tensor_addressing_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixLoadTensorNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixLoadTensorNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.object.dis(ctx), @@ -29178,15 +29417,16 @@ impl InstEncoding for OpCooperativeMatrixStoreTensorNV { tensor_addressing_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpCooperativeMatrixStoreTensorNV{}{}{}{}{}", + "{}OpCooperativeMatrixStoreTensorNV{}{}{}{}{}", + ctx.id_result_writer(), self.pointer.dis(ctx), self.object.dis(ctx), self.tensor_layout.dis(ctx), @@ -29236,17 +29476,17 @@ impl InstEncoding for OpCooperativeMatrixPerElementOpNV { operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixPerElementOpNV{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixPerElementOpNV{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.matrix.dis(ctx), self.func.dis(ctx), @@ -29287,16 +29527,16 @@ impl InstEncoding for OpTypeTensorLayoutNV { clamp_mode: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeTensorLayoutNV{}{}", - self.id_result.dis(ctx), + "{}OpTypeTensorLayoutNV{}{}", + ctx.id_result_writer(), self.dim.dis(ctx), self.clamp_mode.dis(ctx) ) @@ -29339,16 +29579,16 @@ impl InstEncoding for OpTypeTensorViewNV { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeTensorViewNV{}{}{}", - self.id_result.dis(ctx), + "{}OpTypeTensorViewNV{}{}{}", + ctx.id_result_writer(), self.dim.dis(ctx), self.has_dimensions.dis(ctx), self.p.dis(ctx) @@ -29384,17 +29624,17 @@ impl InstEncoding for OpCreateTensorLayoutNV { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCreateTensorLayoutNV{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCreateTensorLayoutNV{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -29436,17 +29676,17 @@ impl InstEncoding for OpTensorLayoutSetDimensionNV { dim: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorLayoutSetDimensionNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpTensorLayoutSetDimensionNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor_layout.dis(ctx), self.dim.dis(ctx) @@ -29490,17 +29730,17 @@ impl InstEncoding for OpTensorLayoutSetStrideNV { stride: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorLayoutSetStrideNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpTensorLayoutSetStrideNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor_layout.dis(ctx), self.stride.dis(ctx) @@ -29544,17 +29784,17 @@ impl InstEncoding for OpTensorLayoutSliceNV { operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorLayoutSliceNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpTensorLayoutSliceNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor_layout.dis(ctx), self.operands.dis(ctx) @@ -29598,17 +29838,17 @@ impl InstEncoding for OpTensorLayoutSetClampValueNV { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorLayoutSetClampValueNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpTensorLayoutSetClampValueNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor_layout.dis(ctx), self.value.dis(ctx) @@ -29644,17 +29884,17 @@ impl InstEncoding for OpCreateTensorViewNV { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCreateTensorViewNV{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCreateTensorViewNV{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -29696,17 +29936,17 @@ impl InstEncoding for OpTensorViewSetDimensionNV { dim: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorViewSetDimensionNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpTensorViewSetDimensionNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor_view.dis(ctx), self.dim.dis(ctx) @@ -29750,17 +29990,17 @@ impl InstEncoding for OpTensorViewSetStrideNV { stride: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorViewSetStrideNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpTensorViewSetStrideNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor_view.dis(ctx), self.stride.dis(ctx) @@ -29786,8 +30026,13 @@ impl InstEncoding for OpDemoteToHelperInvocation { reader.check_opcode(Self::META)?; Ok(Self {}) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { - write!(f, "OpDemoteToHelperInvocation") + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { + let ctx = &OperandDisContext { + id_result: None, + id_result_type: None, + ctx, + }; + write!(f, "{}OpDemoteToHelperInvocation", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -29819,17 +30064,17 @@ impl InstEncoding for OpIsHelperInvocationEXT { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIsHelperInvocationEXT{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpIsHelperInvocationEXT{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -29883,17 +30128,17 @@ impl InstEncoding for OpTensorViewSetClipNV { clip_col_span: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorViewSetClipNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpTensorViewSetClipNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor_view.dis(ctx), self.clip_row_offset.dis(ctx), @@ -29940,17 +30185,17 @@ impl InstEncoding for OpTensorLayoutSetBlockSizeNV { block_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTensorLayoutSetBlockSizeNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpTensorLayoutSetBlockSizeNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.tensor_layout.dis(ctx), self.block_size.dis(ctx) @@ -29990,17 +30235,17 @@ impl InstEncoding for OpCooperativeMatrixTransposeNV { matrix: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCooperativeMatrixTransposeNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCooperativeMatrixTransposeNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.matrix.dis(ctx) ) @@ -30039,17 +30284,17 @@ impl InstEncoding for OpConvertUToImageNV { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertUToImageNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertUToImageNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -30088,17 +30333,17 @@ impl InstEncoding for OpConvertUToSamplerNV { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertUToSamplerNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertUToSamplerNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -30137,17 +30382,17 @@ impl InstEncoding for OpConvertImageToUNV { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertImageToUNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertImageToUNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -30186,17 +30431,17 @@ impl InstEncoding for OpConvertSamplerToUNV { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertSamplerToUNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertSamplerToUNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -30235,17 +30480,17 @@ impl InstEncoding for OpConvertUToSampledImageNV { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertUToSampledImageNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertUToSampledImageNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -30284,17 +30529,17 @@ impl InstEncoding for OpConvertSampledImageToUNV { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertSampledImageToUNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertSampledImageToUNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -30324,15 +30569,16 @@ impl InstEncoding for OpSamplerImageAddressingModeNV { bit_width: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSamplerImageAddressingModeNV{}", + "{}OpSamplerImageAddressingModeNV{}", + ctx.id_result_writer(), self.bit_width.dis(ctx) ) } @@ -30386,17 +30632,17 @@ impl InstEncoding for OpRawAccessChainNV { raw_access_chain_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRawAccessChainNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpRawAccessChainNV{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.base.dis(ctx), self.byte_stride.dis(ctx), @@ -30443,17 +30689,17 @@ impl InstEncoding for OpRayQueryGetIntersectionSpherePositionNV { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionSpherePositionNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionSpherePositionNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -30497,17 +30743,17 @@ impl InstEncoding for OpRayQueryGetIntersectionSphereRadiusNV { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionSphereRadiusNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionSphereRadiusNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -30551,17 +30797,17 @@ impl InstEncoding for OpRayQueryGetIntersectionLSSPositionsNV { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionLSSPositionsNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionLSSPositionsNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -30605,17 +30851,17 @@ impl InstEncoding for OpRayQueryGetIntersectionLSSRadiiNV { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionLSSRadiiNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionLSSRadiiNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -30659,17 +30905,17 @@ impl InstEncoding for OpRayQueryGetIntersectionLSSHitValueNV { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionLSSHitValueNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionLSSHitValueNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -30709,17 +30955,17 @@ impl InstEncoding for OpHitObjectGetSpherePositionNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetSpherePositionNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetSpherePositionNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -30758,17 +31004,17 @@ impl InstEncoding for OpHitObjectGetSphereRadiusNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetSphereRadiusNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetSphereRadiusNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -30807,17 +31053,17 @@ impl InstEncoding for OpHitObjectGetLSSPositionsNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetLSSPositionsNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetLSSPositionsNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -30856,17 +31102,17 @@ impl InstEncoding for OpHitObjectGetLSSRadiiNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectGetLSSRadiiNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectGetLSSRadiiNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -30905,17 +31151,17 @@ impl InstEncoding for OpHitObjectIsSphereHitNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectIsSphereHitNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectIsSphereHitNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -30954,17 +31200,17 @@ impl InstEncoding for OpHitObjectIsLSSHitNV { hit_object: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpHitObjectIsLSSHitNV{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpHitObjectIsLSSHitNV{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.hit_object.dis(ctx) ) @@ -31007,17 +31253,17 @@ impl InstEncoding for OpRayQueryIsSphereHitNV { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryIsSphereHitNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryIsSphereHitNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -31061,17 +31307,17 @@ impl InstEncoding for OpRayQueryIsLSSHitNV { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryIsLSSHitNV{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryIsLSSHitNV{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -31115,17 +31361,17 @@ impl InstEncoding for OpSubgroupShuffleINTEL { invocation_id: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupShuffleINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupShuffleINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.data.dis(ctx), self.invocation_id.dis(ctx) @@ -31173,17 +31419,17 @@ impl InstEncoding for OpSubgroupShuffleDownINTEL { delta: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupShuffleDownINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupShuffleDownINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.current.dis(ctx), self.next.dis(ctx), @@ -31232,17 +31478,17 @@ impl InstEncoding for OpSubgroupShuffleUpINTEL { delta: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupShuffleUpINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupShuffleUpINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.previous.dis(ctx), self.current.dis(ctx), @@ -31287,17 +31533,17 @@ impl InstEncoding for OpSubgroupShuffleXorINTEL { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupShuffleXorINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupShuffleXorINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.data.dis(ctx), self.value.dis(ctx) @@ -31337,17 +31583,17 @@ impl InstEncoding for OpSubgroupBlockReadINTEL { ptr: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupBlockReadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupBlockReadINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ptr.dis(ctx) ) @@ -31380,15 +31626,16 @@ impl InstEncoding for OpSubgroupBlockWriteINTEL { data: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroupBlockWriteINTEL{}{}", + "{}OpSubgroupBlockWriteINTEL{}{}", + ctx.id_result_writer(), self.ptr.dis(ctx), self.data.dis(ctx) ) @@ -31431,17 +31678,17 @@ impl InstEncoding for OpSubgroupImageBlockReadINTEL { coordinate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupImageBlockReadINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupImageBlockReadINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx) @@ -31481,15 +31728,16 @@ impl InstEncoding for OpSubgroupImageBlockWriteINTEL { data: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroupImageBlockWriteINTEL{}{}{}", + "{}OpSubgroupImageBlockWriteINTEL{}{}{}", + ctx.id_result_writer(), self.image.dis(ctx), self.coordinate.dis(ctx), self.data.dis(ctx) @@ -31541,17 +31789,17 @@ impl InstEncoding for OpSubgroupImageMediaBlockReadINTEL { height: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupImageMediaBlockReadINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupImageMediaBlockReadINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image.dis(ctx), self.coordinate.dis(ctx), @@ -31601,15 +31849,16 @@ impl InstEncoding for OpSubgroupImageMediaBlockWriteINTEL { data: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroupImageMediaBlockWriteINTEL{}{}{}{}{}", + "{}OpSubgroupImageMediaBlockWriteINTEL{}{}{}{}{}", + ctx.id_result_writer(), self.image.dis(ctx), self.coordinate.dis(ctx), self.width.dis(ctx), @@ -31651,17 +31900,17 @@ impl InstEncoding for OpUCountLeadingZerosINTEL { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUCountLeadingZerosINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpUCountLeadingZerosINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -31700,17 +31949,17 @@ impl InstEncoding for OpUCountTrailingZerosINTEL { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUCountTrailingZerosINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpUCountTrailingZerosINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -31753,17 +32002,17 @@ impl InstEncoding for OpAbsISubINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAbsISubINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpAbsISubINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -31807,17 +32056,17 @@ impl InstEncoding for OpAbsUSubINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAbsUSubINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpAbsUSubINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -31861,17 +32110,17 @@ impl InstEncoding for OpIAddSatINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIAddSatINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIAddSatINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -31915,17 +32164,17 @@ impl InstEncoding for OpUAddSatINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUAddSatINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUAddSatINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -31969,17 +32218,17 @@ impl InstEncoding for OpIAverageINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIAverageINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIAverageINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -32023,17 +32272,17 @@ impl InstEncoding for OpUAverageINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUAverageINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUAverageINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -32077,17 +32326,17 @@ impl InstEncoding for OpIAverageRoundedINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIAverageRoundedINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIAverageRoundedINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -32131,17 +32380,17 @@ impl InstEncoding for OpUAverageRoundedINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUAverageRoundedINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUAverageRoundedINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -32185,17 +32434,17 @@ impl InstEncoding for OpISubSatINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpISubSatINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpISubSatINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -32239,17 +32488,17 @@ impl InstEncoding for OpUSubSatINTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUSubSatINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUSubSatINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -32293,17 +32542,17 @@ impl InstEncoding for OpIMul32x16INTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpIMul32x16INTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpIMul32x16INTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -32347,17 +32596,17 @@ impl InstEncoding for OpUMul32x16INTEL { operand_2: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUMul32x16INTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUMul32x16INTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx), self.operand_2.dis(ctx) @@ -32397,17 +32646,17 @@ impl InstEncoding for OpConstantFunctionPointerINTEL { function: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConstantFunctionPointerINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConstantFunctionPointerINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.function.dis(ctx) ) @@ -32446,17 +32695,17 @@ impl InstEncoding for OpFunctionPointerCallINTEL { operand_1: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFunctionPointerCallINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFunctionPointerCallINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand_1.dis(ctx) ) @@ -32491,16 +32740,16 @@ impl InstEncoding for OpAsmTargetINTEL { asm_target: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpAsmTargetINTEL{}", - self.id_result.dis(ctx), + "{}OpAsmTargetINTEL{}", + ctx.id_result_writer(), self.asm_target.dis(ctx) ) } @@ -32550,17 +32799,17 @@ impl InstEncoding for OpAsmINTEL { constraints: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAsmINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAsmINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.asm_type.dis(ctx), self.target.dis(ctx), @@ -32606,17 +32855,17 @@ impl InstEncoding for OpAsmCallINTEL { argument: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAsmCallINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpAsmCallINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.asm.dis(ctx), self.argument.dis(ctx) @@ -32668,17 +32917,17 @@ impl InstEncoding for OpAtomicFMinEXT { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicFMinEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicFMinEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -32732,17 +32981,17 @@ impl InstEncoding for OpAtomicFMaxEXT { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicFMaxEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicFMaxEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -32775,13 +33024,18 @@ impl InstEncoding for OpAssumeTrueKHR { condition: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpAssumeTrueKHR{}", self.condition.dis(ctx)) + write!( + f, + "{}OpAssumeTrueKHR{}", + ctx.id_result_writer(), + self.condition.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -32821,17 +33075,17 @@ impl InstEncoding for OpExpectKHR { expected_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpExpectKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpExpectKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.value.dis(ctx), self.expected_value.dis(ctx) @@ -32867,15 +33121,16 @@ impl InstEncoding for OpDecorateString { decoration: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpDecorateString{}{}", + "{}OpDecorateString{}{}", + ctx.id_result_writer(), self.target.dis(ctx), self.decoration.dis(ctx) ) @@ -32914,15 +33169,16 @@ impl InstEncoding for OpMemberDecorateString { decoration: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpMemberDecorateString{}{}{}", + "{}OpMemberDecorateString{}{}{}", + ctx.id_result_writer(), self.struct_type.dis(ctx), self.member.dis(ctx), self.decoration.dis(ctx) @@ -32966,17 +33222,17 @@ impl InstEncoding for OpVmeImageINTEL { sampler: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpVmeImageINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpVmeImageINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image_type.dis(ctx), self.sampler.dis(ctx) @@ -33012,16 +33268,16 @@ impl InstEncoding for OpTypeVmeImageINTEL { image_type: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeVmeImageINTEL{}", - self.id_result.dis(ctx), + "{}OpTypeVmeImageINTEL{}", + ctx.id_result_writer(), self.image_type.dis(ctx) ) } @@ -33050,13 +33306,13 @@ impl InstEncoding for OpTypeAvcImePayloadINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeAvcImePayloadINTEL", self.id_result.dis(ctx)) + write!(f, "{}OpTypeAvcImePayloadINTEL", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -33083,13 +33339,13 @@ impl InstEncoding for OpTypeAvcRefPayloadINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeAvcRefPayloadINTEL", self.id_result.dis(ctx)) + write!(f, "{}OpTypeAvcRefPayloadINTEL", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -33116,13 +33372,13 @@ impl InstEncoding for OpTypeAvcSicPayloadINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeAvcSicPayloadINTEL", self.id_result.dis(ctx)) + write!(f, "{}OpTypeAvcSicPayloadINTEL", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -33149,13 +33405,13 @@ impl InstEncoding for OpTypeAvcMcePayloadINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeAvcMcePayloadINTEL", self.id_result.dis(ctx)) + write!(f, "{}OpTypeAvcMcePayloadINTEL", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -33182,13 +33438,13 @@ impl InstEncoding for OpTypeAvcMceResultINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeAvcMceResultINTEL", self.id_result.dis(ctx)) + write!(f, "{}OpTypeAvcMceResultINTEL", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -33215,13 +33471,13 @@ impl InstEncoding for OpTypeAvcImeResultINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeAvcImeResultINTEL", self.id_result.dis(ctx)) + write!(f, "{}OpTypeAvcImeResultINTEL", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -33248,16 +33504,16 @@ impl InstEncoding for OpTypeAvcImeResultSingleReferenceStreamoutINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeAvcImeResultSingleReferenceStreamoutINTEL", - self.id_result.dis(ctx) + "{}OpTypeAvcImeResultSingleReferenceStreamoutINTEL", + ctx.id_result_writer() ) } } @@ -33285,16 +33541,16 @@ impl InstEncoding for OpTypeAvcImeResultDualReferenceStreamoutINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeAvcImeResultDualReferenceStreamoutINTEL", - self.id_result.dis(ctx) + "{}OpTypeAvcImeResultDualReferenceStreamoutINTEL", + ctx.id_result_writer() ) } } @@ -33322,16 +33578,16 @@ impl InstEncoding for OpTypeAvcImeSingleReferenceStreaminINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeAvcImeSingleReferenceStreaminINTEL", - self.id_result.dis(ctx) + "{}OpTypeAvcImeSingleReferenceStreaminINTEL", + ctx.id_result_writer() ) } } @@ -33359,16 +33615,16 @@ impl InstEncoding for OpTypeAvcImeDualReferenceStreaminINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeAvcImeDualReferenceStreaminINTEL", - self.id_result.dis(ctx) + "{}OpTypeAvcImeDualReferenceStreaminINTEL", + ctx.id_result_writer() ) } } @@ -33396,13 +33652,13 @@ impl InstEncoding for OpTypeAvcRefResultINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeAvcRefResultINTEL", self.id_result.dis(ctx)) + write!(f, "{}OpTypeAvcRefResultINTEL", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -33429,13 +33685,13 @@ impl InstEncoding for OpTypeAvcSicResultINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeAvcSicResultINTEL", self.id_result.dis(ctx)) + write!(f, "{}OpTypeAvcSicResultINTEL", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -33476,17 +33732,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyIN qp: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.slice_type.dis(ctx), self.qp.dis(ctx) @@ -33530,17 +33786,17 @@ impl InstEncoding for OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.reference_base_penalty.dis(ctx), self.payload.dis(ctx) @@ -33584,17 +33840,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL { qp: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.slice_type.dis(ctx), self.qp.dis(ctx) @@ -33638,17 +33894,17 @@ impl InstEncoding for OpSubgroupAvcMceSetInterShapePenaltyINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceSetInterShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceSetInterShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packed_shape_penalty.dis(ctx), self.payload.dis(ctx) @@ -33692,17 +33948,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL { qp: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.slice_type.dis(ctx), self.qp.dis(ctx) @@ -33746,17 +34002,17 @@ impl InstEncoding for OpSubgroupAvcMceSetInterDirectionPenaltyINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceSetInterDirectionPenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceSetInterDirectionPenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.direction_cost.dis(ctx), self.payload.dis(ctx) @@ -33800,17 +34056,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL { qp: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.slice_type.dis(ctx), self.qp.dis(ctx) @@ -33854,17 +34110,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL qp: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.slice_type.dis(ctx), self.qp.dis(ctx) @@ -33900,17 +34156,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -33944,17 +34200,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -33988,17 +34244,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -34048,17 +34304,17 @@ impl InstEncoding for OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packed_cost_center_delta.dis(ctx), self.packed_cost_table.dis(ctx), @@ -34104,17 +34360,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL { qp: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.slice_type.dis(ctx), self.qp.dis(ctx) @@ -34150,17 +34406,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -34194,17 +34450,17 @@ impl InstEncoding for OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -34242,17 +34498,17 @@ impl InstEncoding for OpSubgroupAvcMceSetAcOnlyHaarINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceSetAcOnlyHaarINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceSetAcOnlyHaarINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34295,17 +34551,17 @@ impl InstEncoding for OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.source_field_polarity.dis(ctx), self.payload.dis(ctx) @@ -34350,17 +34606,17 @@ impl InstEncoding for OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityI payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.reference_field_polarity.dis(ctx), self.payload.dis(ctx) @@ -34409,17 +34665,17 @@ impl InstEncoding for OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesI payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.forward_reference_field_polarity.dis(ctx), self.backward_reference_field_polarity.dis(ctx), @@ -34460,17 +34716,17 @@ impl InstEncoding for OpSubgroupAvcMceConvertToImePayloadINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceConvertToImePayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceConvertToImePayloadINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34509,17 +34765,17 @@ impl InstEncoding for OpSubgroupAvcMceConvertToImeResultINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceConvertToImeResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceConvertToImeResultINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34558,17 +34814,17 @@ impl InstEncoding for OpSubgroupAvcMceConvertToRefPayloadINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceConvertToRefPayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceConvertToRefPayloadINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34607,17 +34863,17 @@ impl InstEncoding for OpSubgroupAvcMceConvertToRefResultINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceConvertToRefResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceConvertToRefResultINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34656,17 +34912,17 @@ impl InstEncoding for OpSubgroupAvcMceConvertToSicPayloadINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceConvertToSicPayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceConvertToSicPayloadINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34705,17 +34961,17 @@ impl InstEncoding for OpSubgroupAvcMceConvertToSicResultINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceConvertToSicResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceConvertToSicResultINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34754,17 +35010,17 @@ impl InstEncoding for OpSubgroupAvcMceGetMotionVectorsINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34803,17 +35059,17 @@ impl InstEncoding for OpSubgroupAvcMceGetInterDistortionsINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetInterDistortionsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetInterDistortionsINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34852,17 +35108,17 @@ impl InstEncoding for OpSubgroupAvcMceGetBestInterDistortionsINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetBestInterDistortionsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetBestInterDistortionsINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34901,17 +35157,17 @@ impl InstEncoding for OpSubgroupAvcMceGetInterMajorShapeINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetInterMajorShapeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetInterMajorShapeINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34950,17 +35206,17 @@ impl InstEncoding for OpSubgroupAvcMceGetInterMinorShapeINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetInterMinorShapeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetInterMinorShapeINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -34999,17 +35255,17 @@ impl InstEncoding for OpSubgroupAvcMceGetInterDirectionsINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetInterDirectionsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetInterDirectionsINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -35048,17 +35304,17 @@ impl InstEncoding for OpSubgroupAvcMceGetInterMotionVectorCountINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetInterMotionVectorCountINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetInterMotionVectorCountINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -35097,17 +35353,17 @@ impl InstEncoding for OpSubgroupAvcMceGetInterReferenceIdsINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetInterReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetInterReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -35158,17 +35414,17 @@ impl InstEncoding for OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolarities payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packed_reference_ids.dis(ctx), self.packed_reference_parameter_field_polarities.dis(ctx), @@ -35217,17 +35473,17 @@ impl InstEncoding for OpSubgroupAvcImeInitializeINTEL { sad_adjustment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_coord.dis(ctx), self.partition_mask.dis(ctx), @@ -35276,17 +35532,17 @@ impl InstEncoding for OpSubgroupAvcImeSetSingleReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeSetSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeSetSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ref_offset.dis(ctx), self.search_window_config.dis(ctx), @@ -35339,17 +35595,17 @@ impl InstEncoding for OpSubgroupAvcImeSetDualReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeSetDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeSetDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.fwd_ref_offset.dis(ctx), self.bwd_ref_offset.dis(ctx), @@ -35395,17 +35651,17 @@ impl InstEncoding for OpSubgroupAvcImeRefWindowSizeINTEL { dual_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeRefWindowSizeINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeRefWindowSizeINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.search_window_config.dis(ctx), self.dual_ref.dis(ctx) @@ -35457,17 +35713,17 @@ impl InstEncoding for OpSubgroupAvcImeAdjustRefOffsetINTEL { image_size: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeAdjustRefOffsetINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeAdjustRefOffsetINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ref_offset.dis(ctx), self.src_coord.dis(ctx), @@ -35509,17 +35765,17 @@ impl InstEncoding for OpSubgroupAvcImeConvertToMcePayloadINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -35562,17 +35818,17 @@ impl InstEncoding for OpSubgroupAvcImeSetMaxMotionVectorCountINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeSetMaxMotionVectorCountINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeSetMaxMotionVectorCountINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.max_motion_vector_count.dis(ctx), self.payload.dis(ctx) @@ -35612,17 +35868,17 @@ impl InstEncoding for OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -35665,17 +35921,17 @@ impl InstEncoding for OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.threshold.dis(ctx), self.payload.dis(ctx) @@ -35719,17 +35975,17 @@ impl InstEncoding for OpSubgroupAvcImeSetWeightedSadINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeSetWeightedSadINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeSetWeightedSadINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packed_sad_weights.dis(ctx), self.payload.dis(ctx) @@ -35777,17 +36033,17 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.ref_image.dis(ctx), @@ -35840,17 +36096,17 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithDualReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.fwd_ref_image.dis(ctx), @@ -35904,17 +36160,17 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL { streamin_components: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.ref_image.dis(ctx), @@ -35972,17 +36228,17 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL { streamin_components: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.fwd_ref_image.dis(ctx), @@ -36033,17 +36289,17 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.ref_image.dis(ctx), @@ -36096,17 +36352,17 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.fwd_ref_image.dis(ctx), @@ -36160,17 +36416,17 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTE streamin_components: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.ref_image.dis(ctx), @@ -36228,17 +36484,17 @@ impl InstEncoding for OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL streamin_components: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.fwd_ref_image.dis(ctx), @@ -36281,17 +36537,17 @@ impl InstEncoding for OpSubgroupAvcImeConvertToMceResultINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -36330,17 +36586,17 @@ impl InstEncoding for OpSubgroupAvcImeGetSingleReferenceStreaminINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetSingleReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetSingleReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -36379,17 +36635,17 @@ impl InstEncoding for OpSubgroupAvcImeGetDualReferenceStreaminINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetDualReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetDualReferenceStreaminINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -36428,17 +36684,17 @@ impl InstEncoding for OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -36477,17 +36733,17 @@ impl InstEncoding for OpSubgroupAvcImeStripDualReferenceStreamoutINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeStripDualReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeStripDualReferenceStreamoutINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -36531,17 +36787,17 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotio major_shape: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx), self.major_shape.dis(ctx) @@ -36586,17 +36842,17 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDisto major_shape: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx), self.major_shape.dis(ctx) @@ -36641,17 +36897,17 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeRefer major_shape: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx), self.major_shape.dis(ctx) @@ -36700,17 +36956,17 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionV direction: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx), self.major_shape.dis(ctx), @@ -36760,17 +37016,17 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistort direction: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx), self.major_shape.dis(ctx), @@ -36820,17 +37076,17 @@ impl InstEncoding for OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferen direction: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx), self.major_shape.dis(ctx), @@ -36875,17 +37131,17 @@ impl InstEncoding for OpSubgroupAvcImeGetBorderReachedINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetBorderReachedINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetBorderReachedINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.image_select.dis(ctx), self.payload.dis(ctx) @@ -36925,17 +37181,17 @@ impl InstEncoding for OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -36974,17 +37230,17 @@ impl InstEncoding for OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINT payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -37023,17 +37279,17 @@ impl InstEncoding for OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTE payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -37072,17 +37328,17 @@ impl InstEncoding for OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -37145,17 +37401,17 @@ impl InstEncoding for OpSubgroupAvcFmeInitializeINTEL { sad_adjustment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcFmeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcFmeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_coord.dis(ctx), self.motion_vectors.dis(ctx), @@ -37228,17 +37484,17 @@ impl InstEncoding for OpSubgroupAvcBmeInitializeINTEL { sad_adjustment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcBmeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcBmeInitializeINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_coord.dis(ctx), self.motion_vectors.dis(ctx), @@ -37284,17 +37540,17 @@ impl InstEncoding for OpSubgroupAvcRefConvertToMcePayloadINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcRefConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcRefConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -37333,17 +37589,17 @@ impl InstEncoding for OpSubgroupAvcRefSetBidirectionalMixDisableINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcRefSetBidirectionalMixDisableINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcRefSetBidirectionalMixDisableINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -37382,17 +37638,17 @@ impl InstEncoding for OpSubgroupAvcRefSetBilinearFilterEnableINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcRefSetBilinearFilterEnableINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcRefSetBilinearFilterEnableINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -37439,17 +37695,17 @@ impl InstEncoding for OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.ref_image.dis(ctx), @@ -37502,17 +37758,17 @@ impl InstEncoding for OpSubgroupAvcRefEvaluateWithDualReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcRefEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcRefEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.fwd_ref_image.dis(ctx), @@ -37562,17 +37818,17 @@ impl InstEncoding for OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.packed_reference_ids.dis(ctx), @@ -37625,17 +37881,17 @@ impl InstEncoding for OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.packed_reference_ids.dis(ctx), @@ -37677,17 +37933,17 @@ impl InstEncoding for OpSubgroupAvcRefConvertToMceResultINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcRefConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcRefConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -37726,17 +37982,17 @@ impl InstEncoding for OpSubgroupAvcSicInitializeINTEL { src_coord: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicInitializeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicInitializeINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_coord.dis(ctx) ) @@ -37795,17 +38051,17 @@ impl InstEncoding for OpSubgroupAvcSicConfigureSkcINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicConfigureSkcINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicConfigureSkcINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.skip_block_partition_type.dis(ctx), self.skip_motion_vector_mask.dis(ctx), @@ -37877,17 +38133,17 @@ impl InstEncoding for OpSubgroupAvcSicConfigureIpeLumaINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicConfigureIpeLumaINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicConfigureIpeLumaINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.luma_intra_partition_mask.dis(ctx), self.intra_neighbour_availabilty.dis(ctx), @@ -37973,17 +38229,17 @@ impl InstEncoding for OpSubgroupAvcSicConfigureIpeLumaChromaINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicConfigureIpeLumaChromaINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicConfigureIpeLumaChromaINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.luma_intra_partition_mask.dis(ctx), self.intra_neighbour_availabilty.dis(ctx), @@ -38036,17 +38292,17 @@ impl InstEncoding for OpSubgroupAvcSicGetMotionVectorMaskINTEL { direction: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetMotionVectorMaskINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetMotionVectorMaskINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.skip_block_partition_type.dis(ctx), self.direction.dis(ctx) @@ -38086,17 +38342,17 @@ impl InstEncoding for OpSubgroupAvcSicConvertToMcePayloadINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicConvertToMcePayloadINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -38139,17 +38395,17 @@ impl InstEncoding for OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packed_shape_penalty.dis(ctx), self.payload.dis(ctx) @@ -38201,17 +38457,17 @@ impl InstEncoding for OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.luma_mode_penalty.dis(ctx), self.luma_packed_neighbor_modes.dis(ctx), @@ -38257,17 +38513,17 @@ impl InstEncoding for OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.chroma_mode_base_penalty.dis(ctx), self.payload.dis(ctx) @@ -38307,17 +38563,17 @@ impl InstEncoding for OpSubgroupAvcSicSetBilinearFilterEnableINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicSetBilinearFilterEnableINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicSetBilinearFilterEnableINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -38360,17 +38616,17 @@ impl InstEncoding for OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packed_sad_coefficients.dis(ctx), self.payload.dis(ctx) @@ -38414,17 +38670,17 @@ impl InstEncoding for OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.block_based_skip_type.dis(ctx), self.payload.dis(ctx) @@ -38468,17 +38724,17 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateIpeINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicEvaluateIpeINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicEvaluateIpeINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.payload.dis(ctx) @@ -38526,17 +38782,17 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.ref_image.dis(ctx), @@ -38589,17 +38845,17 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateWithDualReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicEvaluateWithDualReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.fwd_ref_image.dis(ctx), @@ -38649,17 +38905,17 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.packed_reference_ids.dis(ctx), @@ -38712,17 +38968,17 @@ impl InstEncoding for OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.src_image.dis(ctx), self.packed_reference_ids.dis(ctx), @@ -38764,17 +39020,17 @@ impl InstEncoding for OpSubgroupAvcSicConvertToMceResultINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicConvertToMceResultINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -38813,17 +39069,17 @@ impl InstEncoding for OpSubgroupAvcSicGetIpeLumaShapeINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetIpeLumaShapeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetIpeLumaShapeINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -38862,17 +39118,17 @@ impl InstEncoding for OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -38911,17 +39167,17 @@ impl InstEncoding for OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -38960,17 +39216,17 @@ impl InstEncoding for OpSubgroupAvcSicGetPackedIpeLumaModesINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetPackedIpeLumaModesINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetPackedIpeLumaModesINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -39009,17 +39265,17 @@ impl InstEncoding for OpSubgroupAvcSicGetIpeChromaModeINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetIpeChromaModeINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetIpeChromaModeINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -39058,17 +39314,17 @@ impl InstEncoding for OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -39107,17 +39363,17 @@ impl InstEncoding for OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -39156,17 +39412,17 @@ impl InstEncoding for OpSubgroupAvcSicGetInterRawSadsINTEL { payload: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupAvcSicGetInterRawSadsINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSubgroupAvcSicGetInterRawSadsINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.payload.dis(ctx) ) @@ -39205,17 +39461,17 @@ impl InstEncoding for OpVariableLengthArrayINTEL { length: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpVariableLengthArrayINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpVariableLengthArrayINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.length.dis(ctx) ) @@ -39250,17 +39506,17 @@ impl InstEncoding for OpSaveMemoryINTEL { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSaveMemoryINTEL{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSaveMemoryINTEL{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx) ) } @@ -39289,13 +39545,18 @@ impl InstEncoding for OpRestoreMemoryINTEL { ptr: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpRestoreMemoryINTEL{}", self.ptr.dis(ctx)) + write!( + f, + "{}OpRestoreMemoryINTEL{}", + ctx.id_result_writer(), + self.ptr.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -39351,17 +39612,17 @@ impl InstEncoding for OpArbitraryFloatSinCosPiALTERA { rounding_accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatSinCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatSinCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -39425,17 +39686,17 @@ impl InstEncoding for OpArbitraryFloatCastALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatCastALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatCastALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -39499,17 +39760,17 @@ impl InstEncoding for OpArbitraryFloatCastFromIntALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatCastFromIntALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatCastFromIntALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.mresult.dis(ctx), @@ -39573,17 +39834,17 @@ impl InstEncoding for OpArbitraryFloatCastToIntALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatCastToIntALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatCastToIntALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -39655,17 +39916,17 @@ impl InstEncoding for OpArbitraryFloatAddALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatAddALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatAddALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -39739,17 +40000,17 @@ impl InstEncoding for OpArbitraryFloatSubALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatSubALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatSubALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -39823,17 +40084,17 @@ impl InstEncoding for OpArbitraryFloatMulALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatMulALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatMulALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -39907,17 +40168,17 @@ impl InstEncoding for OpArbitraryFloatDivALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatDivALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatDivALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -39975,17 +40236,17 @@ impl InstEncoding for OpArbitraryFloatGTALTERA { mb: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatGTALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatGTALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40039,17 +40300,17 @@ impl InstEncoding for OpArbitraryFloatGEALTERA { mb: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatGEALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatGEALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40103,17 +40364,17 @@ impl InstEncoding for OpArbitraryFloatLTALTERA { mb: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatLTALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatLTALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40167,17 +40428,17 @@ impl InstEncoding for OpArbitraryFloatLEALTERA { mb: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatLEALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatLEALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40231,17 +40492,17 @@ impl InstEncoding for OpArbitraryFloatEQALTERA { mb: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatEQALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatEQALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40303,17 +40564,17 @@ impl InstEncoding for OpArbitraryFloatRecipALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatRecipALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatRecipALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40377,17 +40638,17 @@ impl InstEncoding for OpArbitraryFloatRSqrtALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatRSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatRSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40451,17 +40712,17 @@ impl InstEncoding for OpArbitraryFloatCbrtALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatCbrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatCbrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40533,17 +40794,17 @@ impl InstEncoding for OpArbitraryFloatHypotALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatHypotALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatHypotALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40609,17 +40870,17 @@ impl InstEncoding for OpArbitraryFloatSqrtALTERA { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40683,17 +40944,17 @@ impl InstEncoding for OpArbitraryFloatLogINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatLogINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatLogINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40757,17 +41018,17 @@ impl InstEncoding for OpArbitraryFloatLog2INTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatLog2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatLog2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40831,17 +41092,17 @@ impl InstEncoding for OpArbitraryFloatLog10INTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatLog10INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatLog10INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40905,17 +41166,17 @@ impl InstEncoding for OpArbitraryFloatLog1pINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatLog1pINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatLog1pINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -40979,17 +41240,17 @@ impl InstEncoding for OpArbitraryFloatExpINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatExpINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatExpINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41053,17 +41314,17 @@ impl InstEncoding for OpArbitraryFloatExp2INTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatExp2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatExp2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41127,17 +41388,17 @@ impl InstEncoding for OpArbitraryFloatExp10INTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatExp10INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatExp10INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41201,17 +41462,17 @@ impl InstEncoding for OpArbitraryFloatExpm1INTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatExpm1INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatExpm1INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41275,17 +41536,17 @@ impl InstEncoding for OpArbitraryFloatSinINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatSinINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatSinINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41349,17 +41610,17 @@ impl InstEncoding for OpArbitraryFloatCosINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatCosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatCosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41423,17 +41684,17 @@ impl InstEncoding for OpArbitraryFloatSinCosINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatSinCosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatSinCosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41497,17 +41758,17 @@ impl InstEncoding for OpArbitraryFloatSinPiINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatSinPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatSinPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41571,17 +41832,17 @@ impl InstEncoding for OpArbitraryFloatCosPiINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatCosPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatCosPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41645,17 +41906,17 @@ impl InstEncoding for OpArbitraryFloatASinINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatASinINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatASinINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41719,17 +41980,17 @@ impl InstEncoding for OpArbitraryFloatASinPiINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatASinPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatASinPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41793,17 +42054,17 @@ impl InstEncoding for OpArbitraryFloatACosINTEL { rounding_accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatACosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatACosINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.m_1.dis(ctx), @@ -41867,17 +42128,17 @@ impl InstEncoding for OpArbitraryFloatACosPiINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatACosPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatACosPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -41941,17 +42202,17 @@ impl InstEncoding for OpArbitraryFloatATanINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatATanINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatATanINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -42015,17 +42276,17 @@ impl InstEncoding for OpArbitraryFloatATanPiINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatATanPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatATanPiINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -42097,17 +42358,17 @@ impl InstEncoding for OpArbitraryFloatATan2INTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatATan2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatATan2INTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -42181,17 +42442,17 @@ impl InstEncoding for OpArbitraryFloatPowINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatPowINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatPowINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -42265,17 +42526,17 @@ impl InstEncoding for OpArbitraryFloatPowRINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatPowRINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatPowRINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -42349,17 +42610,17 @@ impl InstEncoding for OpArbitraryFloatPowNINTEL { accuracy: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArbitraryFloatPowNINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpArbitraryFloatPowNINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.ma.dis(ctx), @@ -42396,15 +42657,16 @@ impl InstEncoding for OpLoopControlINTEL { loop_control_parameters: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpLoopControlINTEL{}", + "{}OpLoopControlINTEL{}", + ctx.id_result_writer(), self.loop_control_parameters.dis(ctx) ) } @@ -42437,16 +42699,16 @@ impl InstEncoding for OpAliasDomainDeclINTEL { name: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpAliasDomainDeclINTEL{}", - self.id_result.dis(ctx), + "{}OpAliasDomainDeclINTEL{}", + ctx.id_result_writer(), self.name.dis(ctx) ) } @@ -42484,16 +42746,16 @@ impl InstEncoding for OpAliasScopeDeclINTEL { name: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpAliasScopeDeclINTEL{}{}", - self.id_result.dis(ctx), + "{}OpAliasScopeDeclINTEL{}{}", + ctx.id_result_writer(), self.alias_domain.dis(ctx), self.name.dis(ctx) ) @@ -42528,16 +42790,16 @@ impl InstEncoding for OpAliasScopeListDeclINTEL { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpAliasScopeListDeclINTEL{}", - self.id_result.dis(ctx), + "{}OpAliasScopeListDeclINTEL{}", + ctx.id_result_writer(), self.id_ref.dis(ctx) ) } @@ -42595,17 +42857,17 @@ impl InstEncoding for OpFixedSqrtALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedSqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -42669,17 +42931,17 @@ impl InstEncoding for OpFixedRecipALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedRecipALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedRecipALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -42743,17 +43005,17 @@ impl InstEncoding for OpFixedRsqrtALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedRsqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedRsqrtALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -42817,17 +43079,17 @@ impl InstEncoding for OpFixedSinALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedSinALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedSinALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -42891,17 +43153,17 @@ impl InstEncoding for OpFixedCosALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedCosALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedCosALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -42965,17 +43227,17 @@ impl InstEncoding for OpFixedSinCosALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedSinCosALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedSinCosALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -43039,17 +43301,17 @@ impl InstEncoding for OpFixedSinPiALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedSinPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedSinPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -43113,17 +43375,17 @@ impl InstEncoding for OpFixedCosPiALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -43187,17 +43449,17 @@ impl InstEncoding for OpFixedSinCosPiALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedSinCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedSinCosPiALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -43261,17 +43523,17 @@ impl InstEncoding for OpFixedLogALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedLogALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedLogALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -43335,17 +43597,17 @@ impl InstEncoding for OpFixedExpALTERA { o: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFixedExpALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpFixedExpALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx), self.s.dis(ctx), @@ -43389,17 +43651,17 @@ impl InstEncoding for OpPtrCastToCrossWorkgroupALTERA { pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpPtrCastToCrossWorkgroupALTERA{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpPtrCastToCrossWorkgroupALTERA{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx) ) @@ -43438,17 +43700,17 @@ impl InstEncoding for OpCrossWorkgroupCastToPtrALTERA { pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCrossWorkgroupCastToPtrALTERA{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCrossWorkgroupCastToPtrALTERA{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx) ) @@ -43491,17 +43753,17 @@ impl InstEncoding for OpReadPipeBlockingALTERA { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpReadPipeBlockingALTERA{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpReadPipeBlockingALTERA{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packet_size.dis(ctx), self.packet_alignment.dis(ctx) @@ -43545,17 +43807,17 @@ impl InstEncoding for OpWritePipeBlockingALTERA { packet_alignment: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpWritePipeBlockingALTERA{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpWritePipeBlockingALTERA{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.packet_size.dis(ctx), self.packet_alignment.dis(ctx) @@ -43595,17 +43857,17 @@ impl InstEncoding for OpFPGARegALTERA { input: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpFPGARegALTERA{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpFPGARegALTERA{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.input.dis(ctx) ) @@ -43644,17 +43906,17 @@ impl InstEncoding for OpRayQueryGetRayTMinKHR { ray_query: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetRayTMinKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetRayTMinKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx) ) @@ -43693,17 +43955,17 @@ impl InstEncoding for OpRayQueryGetRayFlagsKHR { ray_query: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetRayFlagsKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetRayFlagsKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx) ) @@ -43746,17 +44008,17 @@ impl InstEncoding for OpRayQueryGetIntersectionTKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionTKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionTKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -43800,17 +44062,17 @@ impl InstEncoding for OpRayQueryGetIntersectionInstanceCustomIndexKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionInstanceCustomIndexKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionInstanceCustomIndexKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -43854,17 +44116,17 @@ impl InstEncoding for OpRayQueryGetIntersectionInstanceIdKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionInstanceIdKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionInstanceIdKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -43909,17 +44171,17 @@ impl InstEncoding for OpRayQueryGetIntersectionInstanceShaderBindingTableRecordO intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -43963,17 +44225,17 @@ impl InstEncoding for OpRayQueryGetIntersectionGeometryIndexKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionGeometryIndexKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionGeometryIndexKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -44017,17 +44279,17 @@ impl InstEncoding for OpRayQueryGetIntersectionPrimitiveIndexKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionPrimitiveIndexKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionPrimitiveIndexKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -44071,17 +44333,17 @@ impl InstEncoding for OpRayQueryGetIntersectionBarycentricsKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionBarycentricsKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionBarycentricsKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -44125,17 +44387,17 @@ impl InstEncoding for OpRayQueryGetIntersectionFrontFaceKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionFrontFaceKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionFrontFaceKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -44175,17 +44437,17 @@ impl InstEncoding for OpRayQueryGetIntersectionCandidateAABBOpaqueKHR { ray_query: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionCandidateAABBOpaqueKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionCandidateAABBOpaqueKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx) ) @@ -44228,17 +44490,17 @@ impl InstEncoding for OpRayQueryGetIntersectionObjectRayDirectionKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionObjectRayDirectionKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionObjectRayDirectionKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -44282,17 +44544,17 @@ impl InstEncoding for OpRayQueryGetIntersectionObjectRayOriginKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionObjectRayOriginKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionObjectRayOriginKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -44332,17 +44594,17 @@ impl InstEncoding for OpRayQueryGetWorldRayDirectionKHR { ray_query: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetWorldRayDirectionKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetWorldRayDirectionKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx) ) @@ -44381,17 +44643,17 @@ impl InstEncoding for OpRayQueryGetWorldRayOriginKHR { ray_query: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetWorldRayOriginKHR{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetWorldRayOriginKHR{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx) ) @@ -44434,17 +44696,17 @@ impl InstEncoding for OpRayQueryGetIntersectionObjectToWorldKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionObjectToWorldKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionObjectToWorldKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -44488,17 +44750,17 @@ impl InstEncoding for OpRayQueryGetIntersectionWorldToObjectKHR { intersection: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRayQueryGetIntersectionWorldToObjectKHR{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpRayQueryGetIntersectionWorldToObjectKHR{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ray_query.dis(ctx), self.intersection.dis(ctx) @@ -44550,17 +44812,17 @@ impl InstEncoding for OpAtomicFAddEXT { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpAtomicFAddEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpAtomicFAddEXT{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.pointer.dis(ctx), self.memory.dis(ctx), @@ -44598,16 +44860,16 @@ impl InstEncoding for OpTypeBufferSurfaceINTEL { access_qualifier: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "{} = OpTypeBufferSurfaceINTEL{}", - self.id_result.dis(ctx), + "{}OpTypeBufferSurfaceINTEL{}", + ctx.id_result_writer(), self.access_qualifier.dis(ctx) ) } @@ -44636,13 +44898,18 @@ impl InstEncoding for OpTypeStructContinuedINTEL { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpTypeStructContinuedINTEL{}", self.id_ref.dis(ctx)) + write!( + f, + "{}OpTypeStructContinuedINTEL{}", + ctx.id_result_writer(), + self.id_ref.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -44669,15 +44936,16 @@ impl InstEncoding for OpConstantCompositeContinuedINTEL { constituents: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpConstantCompositeContinuedINTEL{}", + "{}OpConstantCompositeContinuedINTEL{}", + ctx.id_result_writer(), self.constituents.dis(ctx) ) } @@ -44706,15 +44974,16 @@ impl InstEncoding for OpSpecConstantCompositeContinuedINTEL { constituents: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSpecConstantCompositeContinuedINTEL{}", + "{}OpSpecConstantCompositeContinuedINTEL{}", + ctx.id_result_writer(), self.constituents.dis(ctx) ) } @@ -44752,17 +45021,17 @@ impl InstEncoding for OpCompositeConstructContinuedINTEL { constituents: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpCompositeConstructContinuedINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpCompositeConstructContinuedINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.constituents.dis(ctx) ) @@ -44801,17 +45070,17 @@ impl InstEncoding for OpConvertFToBF16INTEL { float_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertFToBF16INTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertFToBF16INTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.float_value.dis(ctx) ) @@ -44850,17 +45119,17 @@ impl InstEncoding for OpConvertBF16ToFINTEL { b_float_16_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertBF16ToFINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertBF16ToFINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.b_float_16_value.dis(ctx) ) @@ -44899,15 +45168,16 @@ impl InstEncoding for OpControlBarrierArriveINTEL { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpControlBarrierArriveINTEL{}{}{}", + "{}OpControlBarrierArriveINTEL{}{}{}", + ctx.id_result_writer(), self.execution.dis(ctx), self.memory.dis(ctx), self.semantics.dis(ctx) @@ -44947,15 +45217,16 @@ impl InstEncoding for OpControlBarrierWaitINTEL { semantics: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpControlBarrierWaitINTEL{}{}{}", + "{}OpControlBarrierWaitINTEL{}{}{}", + ctx.id_result_writer(), self.execution.dis(ctx), self.memory.dis(ctx), self.semantics.dis(ctx) @@ -44995,17 +45266,17 @@ impl InstEncoding for OpArithmeticFenceEXT { target: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpArithmeticFenceEXT{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpArithmeticFenceEXT{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.target.dis(ctx) ) @@ -45060,17 +45331,17 @@ impl InstEncoding for OpTaskSequenceCreateALTERA { async_capacity: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTaskSequenceCreateALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpTaskSequenceCreateALTERA{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.function.dis(ctx), self.pipelined.dis(ctx), @@ -45109,15 +45380,16 @@ impl InstEncoding for OpTaskSequenceAsyncALTERA { arguments: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpTaskSequenceAsyncALTERA{}{}", + "{}OpTaskSequenceAsyncALTERA{}{}", + ctx.id_result_writer(), self.sequence.dis(ctx), self.arguments.dis(ctx) ) @@ -45156,17 +45428,17 @@ impl InstEncoding for OpTaskSequenceGetALTERA { sequence: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpTaskSequenceGetALTERA{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpTaskSequenceGetALTERA{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.sequence.dis(ctx) ) @@ -45196,13 +45468,18 @@ impl InstEncoding for OpTaskSequenceReleaseALTERA { sequence: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "OpTaskSequenceReleaseALTERA{}", self.sequence.dis(ctx)) + write!( + f, + "{}OpTaskSequenceReleaseALTERA{}", + ctx.id_result_writer(), + self.sequence.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -45229,13 +45506,13 @@ impl InstEncoding for OpTypeTaskSequenceALTERA { id_result: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "{} = OpTypeTaskSequenceALTERA", self.id_result.dis(ctx)) + write!(f, "{}OpTypeTaskSequenceALTERA", ctx.id_result_writer()) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -45271,15 +45548,16 @@ impl InstEncoding for OpSubgroupBlockPrefetchINTEL { memory_access: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroupBlockPrefetchINTEL{}{}{}", + "{}OpSubgroupBlockPrefetchINTEL{}{}{}", + ctx.id_result_writer(), self.ptr.dis(ctx), self.num_bytes.dis(ctx), self.memory_access.dis(ctx) @@ -45347,15 +45625,16 @@ impl InstEncoding for OpSubgroup2DBlockLoadINTEL { dst_pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroup2DBlockLoadINTEL{}{}{}{}{}{}{}{}{}{}", + "{}OpSubgroup2DBlockLoadINTEL{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.element_size.dis(ctx), self.block_width.dis(ctx), self.block_height.dis(ctx), @@ -45430,15 +45709,16 @@ impl InstEncoding for OpSubgroup2DBlockLoadTransformINTEL { dst_pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroup2DBlockLoadTransformINTEL{}{}{}{}{}{}{}{}{}{}", + "{}OpSubgroup2DBlockLoadTransformINTEL{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.element_size.dis(ctx), self.block_width.dis(ctx), self.block_height.dis(ctx), @@ -45513,15 +45793,16 @@ impl InstEncoding for OpSubgroup2DBlockLoadTransposeINTEL { dst_pointer: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroup2DBlockLoadTransposeINTEL{}{}{}{}{}{}{}{}{}{}", + "{}OpSubgroup2DBlockLoadTransposeINTEL{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.element_size.dis(ctx), self.block_width.dis(ctx), self.block_height.dis(ctx), @@ -45592,15 +45873,16 @@ impl InstEncoding for OpSubgroup2DBlockPrefetchINTEL { coordinate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroup2DBlockPrefetchINTEL{}{}{}{}{}{}{}{}{}", + "{}OpSubgroup2DBlockPrefetchINTEL{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.element_size.dis(ctx), self.block_width.dis(ctx), self.block_height.dis(ctx), @@ -45674,15 +45956,16 @@ impl InstEncoding for OpSubgroup2DBlockStoreINTEL { coordinate: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpSubgroup2DBlockStoreINTEL{}{}{}{}{}{}{}{}{}{}", + "{}OpSubgroup2DBlockStoreINTEL{}{}{}{}{}{}{}{}{}{}", + ctx.id_result_writer(), self.element_size.dis(ctx), self.block_width.dis(ctx), self.block_height.dis(ctx), @@ -45745,17 +46028,17 @@ impl InstEncoding for OpSubgroupMatrixMultiplyAccumulateINTEL { matrix_multiply_accumulate_operands: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSubgroupMatrixMultiplyAccumulateINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSubgroupMatrixMultiplyAccumulateINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.k_dim.dis(ctx), self.matrix_a.dis(ctx), @@ -45810,17 +46093,17 @@ impl InstEncoding for OpBitwiseFunctionINTEL { lut_index: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpBitwiseFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpBitwiseFunctionINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.a.dis(ctx), self.b.dis(ctx), @@ -45866,17 +46149,17 @@ impl InstEncoding for OpUntypedVariableLengthArrayINTEL { length: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpUntypedVariableLengthArrayINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpUntypedVariableLengthArrayINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.element_type.dis(ctx), self.length.dis(ctx) @@ -45911,15 +46194,16 @@ impl InstEncoding for OpConditionalExtensionINTEL { name: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpConditionalExtensionINTEL{}{}", + "{}OpConditionalExtensionINTEL{}{}", + ctx.id_result_writer(), self.condition.dis(ctx), self.name.dis(ctx) ) @@ -45966,15 +46250,16 @@ impl InstEncoding for OpConditionalEntryPointINTEL { interface: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpConditionalEntryPointINTEL{}{}{}{}{}", + "{}OpConditionalEntryPointINTEL{}{}{}{}{}", + ctx.id_result_writer(), self.condition.dis(ctx), self.execution_model.dis(ctx), self.entry_point.dis(ctx), @@ -46012,15 +46297,16 @@ impl InstEncoding for OpConditionalCapabilityINTEL { capability: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpConditionalCapabilityINTEL{}{}", + "{}OpConditionalCapabilityINTEL{}{}", + ctx.id_result_writer(), self.condition.dis(ctx), self.capability.dis(ctx) ) @@ -46063,17 +46349,17 @@ impl InstEncoding for OpSpecConstantTargetINTEL { features: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstantTargetINTEL{rspirv_space}{}{rspirv_space}{}{}", - self.id_result.dis(ctx), + "{}OpSpecConstantTargetINTEL{rspirv_space}{}{rspirv_space}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.target.dis(ctx), self.features.dis(ctx) @@ -46125,17 +46411,17 @@ impl InstEncoding for OpSpecConstantArchitectureINTEL { architecture: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstantArchitectureINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpSpecConstantArchitectureINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.category.dis(ctx), self.family.dis(ctx), @@ -46177,17 +46463,17 @@ impl InstEncoding for OpSpecConstantCapabilitiesINTEL { capabilities: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpSpecConstantCapabilitiesINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpSpecConstantCapabilitiesINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.capabilities.dis(ctx) ) @@ -46226,17 +46512,17 @@ impl InstEncoding for OpConditionalCopyObjectINTEL { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConditionalCopyObjectINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConditionalCopyObjectINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.id_ref.dis(ctx) ) @@ -46283,17 +46569,17 @@ impl InstEncoding for OpGroupIMulKHR { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupIMulKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupIMulKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -46342,17 +46628,17 @@ impl InstEncoding for OpGroupFMulKHR { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupFMulKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupFMulKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -46401,17 +46687,17 @@ impl InstEncoding for OpGroupBitwiseAndKHR { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupBitwiseAndKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupBitwiseAndKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -46460,17 +46746,17 @@ impl InstEncoding for OpGroupBitwiseOrKHR { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupBitwiseOrKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupBitwiseOrKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -46519,17 +46805,17 @@ impl InstEncoding for OpGroupBitwiseXorKHR { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupBitwiseXorKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupBitwiseXorKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -46578,17 +46864,17 @@ impl InstEncoding for OpGroupLogicalAndKHR { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupLogicalAndKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupLogicalAndKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -46637,17 +46923,17 @@ impl InstEncoding for OpGroupLogicalOrKHR { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupLogicalOrKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupLogicalOrKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -46696,17 +46982,17 @@ impl InstEncoding for OpGroupLogicalXorKHR { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpGroupLogicalXorKHR{rspirv_space}{}{rspirv_space}{}{}{}", - self.id_result.dis(ctx), + "{}OpGroupLogicalXorKHR{rspirv_space}{}{rspirv_space}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.execution.dis(ctx), self.operation.dis(ctx), @@ -46747,17 +47033,17 @@ impl InstEncoding for OpRoundFToTF32INTEL { float_value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpRoundFToTF32INTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpRoundFToTF32INTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.float_value.dis(ctx) ) @@ -46808,17 +47094,17 @@ impl InstEncoding for OpMaskedGatherINTEL { fill_empty: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpMaskedGatherINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", - self.id_result.dis(ctx), + "{}OpMaskedGatherINTEL{rspirv_space}{}{rspirv_space}{}{}{}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.ptr_vector.dis(ctx), self.alignment.dis(ctx), @@ -46864,15 +47150,16 @@ impl InstEncoding for OpMaskedScatterINTEL { mask: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "OpMaskedScatterINTEL{}{}{}{}", + "{}OpMaskedScatterINTEL{}{}{}{}", + ctx.id_result_writer(), self.input_vector.dis(ctx), self.ptr_vector.dis(ctx), self.alignment.dis(ctx), @@ -46913,17 +47200,17 @@ impl InstEncoding for OpConvertHandleToImageINTEL { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertHandleToImageINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertHandleToImageINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -46962,17 +47249,17 @@ impl InstEncoding for OpConvertHandleToSamplerINTEL { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertHandleToSamplerINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertHandleToSamplerINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) @@ -47011,17 +47298,17 @@ impl InstEncoding for OpConvertHandleToSampledImageINTEL { operand: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: self.id_result, id_result_type: Some(self.id_result_type), - ctx: _ctx, + ctx, }; let rspirv_space = ctx.rspirv_space(); write!( f, - "{} = OpConvertHandleToSampledImageINTEL{rspirv_space}{}{rspirv_space}{}", - self.id_result.dis(ctx), + "{}OpConvertHandleToSampledImageINTEL{rspirv_space}{}{rspirv_space}{}", + ctx.id_result_writer(), self.id_result_type.dis(ctx), self.operand.dis(ctx) ) diff --git a/crates/rspirv2/src/debug_printf/inst.rs b/crates/rspirv2/src/debug_printf/inst.rs index 3952f859..080277e2 100644 --- a/crates/rspirv2/src/debug_printf/inst.rs +++ b/crates/rspirv2/src/debug_printf/inst.rs @@ -27,15 +27,16 @@ impl InstEncoding for DebugPrintf { id_ref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "DebugPrintf{}{}", + "{}DebugPrintf{}{}", + ctx.id_result_writer(), self.format.dis(ctx), self.id_ref.dis(ctx) ) diff --git a/crates/rspirv2/src/glsl_std_450/inst.rs b/crates/rspirv2/src/glsl_std_450/inst.rs index ecbe486d..3d0b74c7 100644 --- a/crates/rspirv2/src/glsl_std_450/inst.rs +++ b/crates/rspirv2/src/glsl_std_450/inst.rs @@ -23,13 +23,13 @@ impl InstEncoding for Round { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Round{}", self.x.dis(ctx)) + write!(f, "{}Round{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -56,13 +56,13 @@ impl InstEncoding for RoundEven { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "RoundEven{}", self.x.dis(ctx)) + write!(f, "{}RoundEven{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -89,13 +89,13 @@ impl InstEncoding for Trunc { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Trunc{}", self.x.dis(ctx)) + write!(f, "{}Trunc{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -122,13 +122,13 @@ impl InstEncoding for FAbs { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "FAbs{}", self.x.dis(ctx)) + write!(f, "{}FAbs{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -155,13 +155,13 @@ impl InstEncoding for SAbs { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "SAbs{}", self.x.dis(ctx)) + write!(f, "{}SAbs{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -188,13 +188,13 @@ impl InstEncoding for FSign { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "FSign{}", self.x.dis(ctx)) + write!(f, "{}FSign{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -221,13 +221,13 @@ impl InstEncoding for SSign { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "SSign{}", self.x.dis(ctx)) + write!(f, "{}SSign{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -254,13 +254,13 @@ impl InstEncoding for Floor { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Floor{}", self.x.dis(ctx)) + write!(f, "{}Floor{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -287,13 +287,13 @@ impl InstEncoding for Ceil { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Ceil{}", self.x.dis(ctx)) + write!(f, "{}Ceil{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -320,13 +320,13 @@ impl InstEncoding for Fract { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Fract{}", self.x.dis(ctx)) + write!(f, "{}Fract{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -353,13 +353,18 @@ impl InstEncoding for Radians { degrees: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Radians{}", self.degrees.dis(ctx)) + write!( + f, + "{}Radians{}", + ctx.id_result_writer(), + self.degrees.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -386,13 +391,18 @@ impl InstEncoding for Degrees { radians: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Degrees{}", self.radians.dis(ctx)) + write!( + f, + "{}Degrees{}", + ctx.id_result_writer(), + self.radians.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -419,13 +429,13 @@ impl InstEncoding for Sin { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Sin{}", self.x.dis(ctx)) + write!(f, "{}Sin{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -452,13 +462,13 @@ impl InstEncoding for Cos { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Cos{}", self.x.dis(ctx)) + write!(f, "{}Cos{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -485,13 +495,13 @@ impl InstEncoding for Tan { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Tan{}", self.x.dis(ctx)) + write!(f, "{}Tan{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -518,13 +528,13 @@ impl InstEncoding for Asin { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Asin{}", self.x.dis(ctx)) + write!(f, "{}Asin{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -551,13 +561,13 @@ impl InstEncoding for Acos { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Acos{}", self.x.dis(ctx)) + write!(f, "{}Acos{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -584,13 +594,18 @@ impl InstEncoding for Atan { y_over_x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Atan{}", self.y_over_x.dis(ctx)) + write!( + f, + "{}Atan{}", + ctx.id_result_writer(), + self.y_over_x.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -617,13 +632,13 @@ impl InstEncoding for Sinh { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Sinh{}", self.x.dis(ctx)) + write!(f, "{}Sinh{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -650,13 +665,13 @@ impl InstEncoding for Cosh { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Cosh{}", self.x.dis(ctx)) + write!(f, "{}Cosh{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -683,13 +698,13 @@ impl InstEncoding for Tanh { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Tanh{}", self.x.dis(ctx)) + write!(f, "{}Tanh{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -716,13 +731,13 @@ impl InstEncoding for Asinh { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Asinh{}", self.x.dis(ctx)) + write!(f, "{}Asinh{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -749,13 +764,13 @@ impl InstEncoding for Acosh { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Acosh{}", self.x.dis(ctx)) + write!(f, "{}Acosh{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -782,13 +797,13 @@ impl InstEncoding for Atanh { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Atanh{}", self.x.dis(ctx)) + write!(f, "{}Atanh{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -818,13 +833,19 @@ impl InstEncoding for Atan2 { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Atan2{}{}", self.y.dis(ctx), self.x.dis(ctx)) + write!( + f, + "{}Atan2{}{}", + ctx.id_result_writer(), + self.y.dis(ctx), + self.x.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -854,13 +875,19 @@ impl InstEncoding for Pow { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Pow{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}Pow{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -887,13 +914,13 @@ impl InstEncoding for Exp { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Exp{}", self.x.dis(ctx)) + write!(f, "{}Exp{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -920,13 +947,13 @@ impl InstEncoding for Log { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Log{}", self.x.dis(ctx)) + write!(f, "{}Log{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -953,13 +980,13 @@ impl InstEncoding for Exp2 { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Exp2{}", self.x.dis(ctx)) + write!(f, "{}Exp2{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -986,13 +1013,13 @@ impl InstEncoding for Log2 { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Log2{}", self.x.dis(ctx)) + write!(f, "{}Log2{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1019,13 +1046,13 @@ impl InstEncoding for Sqrt { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Sqrt{}", self.x.dis(ctx)) + write!(f, "{}Sqrt{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1052,13 +1079,18 @@ impl InstEncoding for InverseSqrt { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "InverseSqrt{}", self.x.dis(ctx)) + write!( + f, + "{}InverseSqrt{}", + ctx.id_result_writer(), + self.x.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1085,13 +1117,18 @@ impl InstEncoding for Determinant { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Determinant{}", self.x.dis(ctx)) + write!( + f, + "{}Determinant{}", + ctx.id_result_writer(), + self.x.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1118,13 +1155,18 @@ impl InstEncoding for MatrixInverse { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "MatrixInverse{}", self.x.dis(ctx)) + write!( + f, + "{}MatrixInverse{}", + ctx.id_result_writer(), + self.x.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1154,13 +1196,19 @@ impl InstEncoding for Modf { i: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Modf{}{}", self.x.dis(ctx), self.i.dis(ctx)) + write!( + f, + "{}Modf{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.i.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1187,13 +1235,13 @@ impl InstEncoding for ModfStruct { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "ModfStruct{}", self.x.dis(ctx)) + write!(f, "{}ModfStruct{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1223,13 +1271,19 @@ impl InstEncoding for FMin { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "FMin{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}FMin{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1259,13 +1313,19 @@ impl InstEncoding for UMin { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "UMin{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}UMin{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1295,13 +1355,19 @@ impl InstEncoding for SMin { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "SMin{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}SMin{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1331,13 +1397,19 @@ impl InstEncoding for FMax { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "FMax{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}FMax{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1367,13 +1439,19 @@ impl InstEncoding for UMax { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "UMax{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}UMax{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1403,13 +1481,19 @@ impl InstEncoding for SMax { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "SMax{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}SMax{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1445,15 +1529,16 @@ impl InstEncoding for FClamp { max_val: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "FClamp{}{}{}", + "{}FClamp{}{}{}", + ctx.id_result_writer(), self.x.dis(ctx), self.min_val.dis(ctx), self.max_val.dis(ctx) @@ -1493,15 +1578,16 @@ impl InstEncoding for UClamp { max_val: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "UClamp{}{}{}", + "{}UClamp{}{}{}", + ctx.id_result_writer(), self.x.dis(ctx), self.min_val.dis(ctx), self.max_val.dis(ctx) @@ -1541,15 +1627,16 @@ impl InstEncoding for SClamp { max_val: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "SClamp{}{}{}", + "{}SClamp{}{}{}", + ctx.id_result_writer(), self.x.dis(ctx), self.min_val.dis(ctx), self.max_val.dis(ctx) @@ -1589,15 +1676,16 @@ impl InstEncoding for FMix { a: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "FMix{}{}{}", + "{}FMix{}{}{}", + ctx.id_result_writer(), self.x.dis(ctx), self.y.dis(ctx), self.a.dis(ctx) @@ -1637,15 +1725,16 @@ impl InstEncoding for IMix { a: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "IMix{}{}{}", + "{}IMix{}{}{}", + ctx.id_result_writer(), self.x.dis(ctx), self.y.dis(ctx), self.a.dis(ctx) @@ -1679,13 +1768,19 @@ impl InstEncoding for Step { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Step{}{}", self.edge.dis(ctx), self.x.dis(ctx)) + write!( + f, + "{}Step{}{}", + ctx.id_result_writer(), + self.edge.dis(ctx), + self.x.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1721,15 +1816,16 @@ impl InstEncoding for SmoothStep { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "SmoothStep{}{}{}", + "{}SmoothStep{}{}{}", + ctx.id_result_writer(), self.edge_0.dis(ctx), self.edge_1.dis(ctx), self.x.dis(ctx) @@ -1769,15 +1865,16 @@ impl InstEncoding for Fma { c: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "Fma{}{}{}", + "{}Fma{}{}{}", + ctx.id_result_writer(), self.a.dis(ctx), self.b.dis(ctx), self.c.dis(ctx) @@ -1811,13 +1908,19 @@ impl InstEncoding for Frexp { exp: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Frexp{}{}", self.x.dis(ctx), self.exp.dis(ctx)) + write!( + f, + "{}Frexp{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.exp.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1844,13 +1947,18 @@ impl InstEncoding for FrexpStruct { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "FrexpStruct{}", self.x.dis(ctx)) + write!( + f, + "{}FrexpStruct{}", + ctx.id_result_writer(), + self.x.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1880,13 +1988,19 @@ impl InstEncoding for Ldexp { exp: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Ldexp{}{}", self.x.dis(ctx), self.exp.dis(ctx)) + write!( + f, + "{}Ldexp{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.exp.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1913,13 +2027,18 @@ impl InstEncoding for PackSnorm4x8 { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "PackSnorm4x8{}", self.v.dis(ctx)) + write!( + f, + "{}PackSnorm4x8{}", + ctx.id_result_writer(), + self.v.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1946,13 +2065,18 @@ impl InstEncoding for PackUnorm4x8 { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "PackUnorm4x8{}", self.v.dis(ctx)) + write!( + f, + "{}PackUnorm4x8{}", + ctx.id_result_writer(), + self.v.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -1979,13 +2103,18 @@ impl InstEncoding for PackSnorm2x16 { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "PackSnorm2x16{}", self.v.dis(ctx)) + write!( + f, + "{}PackSnorm2x16{}", + ctx.id_result_writer(), + self.v.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2012,13 +2141,18 @@ impl InstEncoding for PackUnorm2x16 { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "PackUnorm2x16{}", self.v.dis(ctx)) + write!( + f, + "{}PackUnorm2x16{}", + ctx.id_result_writer(), + self.v.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2045,13 +2179,18 @@ impl InstEncoding for PackHalf2x16 { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "PackHalf2x16{}", self.v.dis(ctx)) + write!( + f, + "{}PackHalf2x16{}", + ctx.id_result_writer(), + self.v.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2078,13 +2217,18 @@ impl InstEncoding for PackDouble2x32 { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "PackDouble2x32{}", self.v.dis(ctx)) + write!( + f, + "{}PackDouble2x32{}", + ctx.id_result_writer(), + self.v.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2111,13 +2255,18 @@ impl InstEncoding for UnpackSnorm2x16 { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "UnpackSnorm2x16{}", self.p.dis(ctx)) + write!( + f, + "{}UnpackSnorm2x16{}", + ctx.id_result_writer(), + self.p.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2144,13 +2293,18 @@ impl InstEncoding for UnpackUnorm2x16 { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "UnpackUnorm2x16{}", self.p.dis(ctx)) + write!( + f, + "{}UnpackUnorm2x16{}", + ctx.id_result_writer(), + self.p.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2177,13 +2331,18 @@ impl InstEncoding for UnpackHalf2x16 { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "UnpackHalf2x16{}", self.v.dis(ctx)) + write!( + f, + "{}UnpackHalf2x16{}", + ctx.id_result_writer(), + self.v.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2210,13 +2369,18 @@ impl InstEncoding for UnpackSnorm4x8 { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "UnpackSnorm4x8{}", self.p.dis(ctx)) + write!( + f, + "{}UnpackSnorm4x8{}", + ctx.id_result_writer(), + self.p.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2243,13 +2407,18 @@ impl InstEncoding for UnpackUnorm4x8 { p: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "UnpackUnorm4x8{}", self.p.dis(ctx)) + write!( + f, + "{}UnpackUnorm4x8{}", + ctx.id_result_writer(), + self.p.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2276,13 +2445,18 @@ impl InstEncoding for UnpackDouble2x32 { v: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "UnpackDouble2x32{}", self.v.dis(ctx)) + write!( + f, + "{}UnpackDouble2x32{}", + ctx.id_result_writer(), + self.v.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2309,13 +2483,13 @@ impl InstEncoding for Length { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Length{}", self.x.dis(ctx)) + write!(f, "{}Length{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2345,13 +2519,19 @@ impl InstEncoding for Distance { p_1: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Distance{}{}", self.p_0.dis(ctx), self.p_1.dis(ctx)) + write!( + f, + "{}Distance{}{}", + ctx.id_result_writer(), + self.p_0.dis(ctx), + self.p_1.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2381,13 +2561,19 @@ impl InstEncoding for Cross { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Cross{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}Cross{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2414,13 +2600,13 @@ impl InstEncoding for Normalize { x: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Normalize{}", self.x.dis(ctx)) + write!(f, "{}Normalize{}", ctx.id_result_writer(), self.x.dis(ctx)) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2456,15 +2642,16 @@ impl InstEncoding for FaceForward { nref: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "FaceForward{}{}{}", + "{}FaceForward{}{}{}", + ctx.id_result_writer(), self.n.dis(ctx), self.i.dis(ctx), self.nref.dis(ctx) @@ -2498,13 +2685,19 @@ impl InstEncoding for Reflect { n: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "Reflect{}{}", self.i.dis(ctx), self.n.dis(ctx)) + write!( + f, + "{}Reflect{}{}", + ctx.id_result_writer(), + self.i.dis(ctx), + self.n.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2540,15 +2733,16 @@ impl InstEncoding for Refract { eta: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "Refract{}{}{}", + "{}Refract{}{}{}", + ctx.id_result_writer(), self.i.dis(ctx), self.n.dis(ctx), self.eta.dis(ctx) @@ -2579,13 +2773,18 @@ impl InstEncoding for FindILsb { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "FindILsb{}", self.value.dis(ctx)) + write!( + f, + "{}FindILsb{}", + ctx.id_result_writer(), + self.value.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2612,13 +2811,18 @@ impl InstEncoding for FindSMsb { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "FindSMsb{}", self.value.dis(ctx)) + write!( + f, + "{}FindSMsb{}", + ctx.id_result_writer(), + self.value.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2645,13 +2849,18 @@ impl InstEncoding for FindUMsb { value: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "FindUMsb{}", self.value.dis(ctx)) + write!( + f, + "{}FindUMsb{}", + ctx.id_result_writer(), + self.value.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2678,13 +2887,18 @@ impl InstEncoding for InterpolateAtCentroid { interpolant: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "InterpolateAtCentroid{}", self.interpolant.dis(ctx)) + write!( + f, + "{}InterpolateAtCentroid{}", + ctx.id_result_writer(), + self.interpolant.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2716,15 +2930,16 @@ impl InstEncoding for InterpolateAtSample { sample: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "InterpolateAtSample{}{}", + "{}InterpolateAtSample{}{}", + ctx.id_result_writer(), self.interpolant.dis(ctx), self.sample.dis(ctx) ) @@ -2759,15 +2974,16 @@ impl InstEncoding for InterpolateAtOffset { offset: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "InterpolateAtOffset{}{}", + "{}InterpolateAtOffset{}{}", + ctx.id_result_writer(), self.interpolant.dis(ctx), self.offset.dis(ctx) ) @@ -2800,13 +3016,19 @@ impl InstEncoding for NMin { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "NMin{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}NMin{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2836,13 +3058,19 @@ impl InstEncoding for NMax { y: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; - write!(f, "NMax{}{}", self.x.dis(ctx), self.y.dis(ctx)) + write!( + f, + "{}NMax{}{}", + ctx.id_result_writer(), + self.x.dis(ctx), + self.y.dis(ctx) + ) } } #[derive(Clone, Debug, Eq, PartialEq, Hash)] @@ -2878,15 +3106,16 @@ impl InstEncoding for NClamp { max_val: OperandEncoding::decode_last(&mut op_reader)?, }) } - fn dis_fmt(&self, f: &mut Formatter<'_>, _ctx: &DisContext) -> std::fmt::Result { + fn dis_fmt(&self, f: &mut Formatter<'_>, ctx: &DisContext) -> std::fmt::Result { let ctx = &OperandDisContext { id_result: None, id_result_type: None, - ctx: _ctx, + ctx, }; write!( f, - "NClamp{}{}{}", + "{}NClamp{}{}{}", + ctx.id_result_writer(), self.x.dis(ctx), self.min_val.dis(ctx), self.max_val.dis(ctx) diff --git a/spv/dis_reference.rspirv2 b/spv/dis_reference.rspirv2 index e46f9d88..36bbf3bc 100644 --- a/spv/dis_reference.rspirv2 +++ b/spv/dis_reference.rspirv2 @@ -1,11 +1,11 @@ -OpCapability Shader -OpCapability StorageImageWriteWithoutFormat -OpCapability VulkanMemoryModel -OpMemoryModel Logical Vulkan -OpEntryPoint GLCompute %1 "main" %tid %offset_buffer %output_buffer -OpExecutionMode %1 LocalSize 32 1 1 -%5 = OpString "ui/dis_reference.rs" -OpSource Unknown 0 %5 "// compile-flags: -C target-feature=+StorageImageWriteWithoutFormat + OpCapability Shader + OpCapability StorageImageWriteWithoutFormat + OpCapability VulkanMemoryModel + OpMemoryModel Logical Vulkan + OpEntryPoint GLCompute %1 "main" %tid %offset_buffer %output_buffer + OpExecutionMode %1 LocalSize 32 1 1 + %5 = OpString "ui/dis_reference.rs" + OpSource Unknown 0 %5 "// compile-flags: -C target-feature=+StorageImageWriteWithoutFormat // compile-flags: -C llvm-args=--disassemble // normalize-stderr-test \"OpSource .*\\n\" -> \"\" // normalize-stderr-test \"OpLine .*\\n\" -> \"\" @@ -75,94 +75,94 @@ pub unsafe fn atomic_i_add( } } " -OpName %tid "tid" -OpName %offset_buffer "offset_buffer" -OpName %output_buffer "output_buffer" -OpName %dis_reference__compute_offset "dis_reference::compute_offset" -OpDecorate %_runtimearr_u32 ArrayStride 4 -OpDecorate %_struct_8 Block -OpMemberDecorate %_struct_8 0 Offset 0 -OpDecorate %_struct_9 Block -OpMemberDecorate %_struct_9 0 Offset 0 -OpDecorate %tid BuiltIn LocalInvocationId -OpDecorate %offset_buffer NonWritable -OpDecorate %offset_buffer Binding 42 -OpDecorate %offset_buffer DescriptorSet 0 -OpDecorate %output_buffer Binding 69 -OpDecorate %output_buffer DescriptorSet 1 -%u32 = OpTypeInt 32 0 -%v3u32 = OpTypeVector %u32 3 + OpName %tid "tid" + OpName %offset_buffer "offset_buffer" + OpName %output_buffer "output_buffer" + OpName %dis_reference__compute_offset "dis_reference::compute_offset" + OpDecorate %_runtimearr_u32 ArrayStride 4 + OpDecorate %_struct_8 Block + OpMemberDecorate %_struct_8 0 Offset 0 + OpDecorate %_struct_9 Block + OpMemberDecorate %_struct_9 0 Offset 0 + OpDecorate %tid BuiltIn LocalInvocationId + OpDecorate %offset_buffer NonWritable + OpDecorate %offset_buffer Binding 42 + OpDecorate %offset_buffer DescriptorSet 0 + OpDecorate %output_buffer Binding 69 + OpDecorate %output_buffer DescriptorSet 1 + %u32 = OpTypeInt 32 0 + %v3u32 = OpTypeVector %u32 3 %_ptr_Input_v3u32 = OpTypePointer Input %v3u32 %_runtimearr_u32 = OpTypeRuntimeArray %u32 -%_struct_8 = OpTypeStruct %_runtimearr_u32 + %_struct_8 = OpTypeStruct %_runtimearr_u32 %_ptr_StorageBuffer__struct_8 = OpTypePointer StorageBuffer %_struct_8 -%_struct_9 = OpTypeStruct %u32 + %_struct_9 = OpTypeStruct %u32 %_ptr_StorageBuffer__struct_9 = OpTypePointer StorageBuffer %_struct_9 -%f32 = OpTypeFloat 32 -%void = OpTypeVoid -%17 = OpTypeFunction %void -%tid = OpVariable %_ptr_Input_v3u32 Input + %f32 = OpTypeFloat 32 + %void = OpTypeVoid + %17 = OpTypeFunction %void + %tid = OpVariable %_ptr_Input_v3u32 Input %_ptr_StorageBuffer__runtimearr_u32 = OpTypePointer StorageBuffer %_runtimearr_u32 %offset_buffer = OpVariable %_ptr_StorageBuffer__struct_8 StorageBuffer -%u32_0 = OpConstant %u32 0 + %u32_0 = OpConstant %u32 0 %_ptr_StorageBuffer_u32 = OpTypePointer StorageBuffer %u32 %output_buffer = OpVariable %_ptr_StorageBuffer__struct_9 StorageBuffer -%21 = OpTypeFunction %u32 %u32 -%u32_1 = OpConstant %u32 1 -%bool = OpTypeBool -%f32_1_7 = OpConstant %f32 1.7 + %21 = OpTypeFunction %u32 %u32 + %u32_1 = OpConstant %u32 1 + %bool = OpTypeBool + %f32_1_7 = OpConstant %f32 1.7 %u32_1333788671 = OpConstant %u32 1333788671 %u32_4294967295 = OpConstant %u32 4294967295 -%u32_5 = OpConstant %u32 5 -%u32_25096 = OpConstant %u32 25096 -%1 = OpFunction %void None %17 -%29 = OpLabel -OpLine %5 24 4 -%30 = OpLoad %v3u32 %tid -OpLine %5 25 4 -%31 = OpInBoundsAccessChain %_ptr_StorageBuffer__runtimearr_u32 %offset_buffer %u32_0 -%32 = OpArrayLength %u32 %offset_buffer 0 -OpLine %5 26 4 -%33 = OpInBoundsAccessChain %_ptr_StorageBuffer_u32 %output_buffer %u32_0 -OpLine %5 30 36 -%34 = OpCompositeExtract %u32 %30 0 -OpLine %5 30 21 -%35 = OpFunctionCall %u32 %dis_reference__compute_offset %34 -OpLine %5 31 26 -%36 = OpULessThan %bool %35 %32 -OpNoLine -OpSelectionMerge %37 None -OpBranchConditional %36 %38 %39 -%38 = OpLabel -OpBranch %37 -%39 = OpLabel -OpReturn -%37 = OpLabel -OpLine %5 31 26 -%40 = OpIAdd %u32 %u32_0 %35 -%41 = OpInBoundsAccessChain %_ptr_StorageBuffer_u32 %31 %40 -%42 = OpLoad %u32 %41 -OpLine %5 32 21 -%43 = OpConvertUToF %f32 %42 -OpLine %5 32 20 -%44 = OpFMul %f32 %43 %f32_1_7 -%45 = OpBitcast %f32 %u32_0 -%46 = OpBitcast %f32 %u32_1333788671 -%47 = OpConvertFToU %u32 %44 -%48 = OpFUnordLessThan %bool %44 %45 -%49 = OpFOrdGreaterThan %bool %44 %46 -%50 = OpSelect %u32 %48 %u32_0 %47 -%51 = OpSelect %u32 %49 %u32_4294967295 %50 -OpLine %5 59 13 -%52 = OpAtomicIAdd %u32 %33 %u32_5 %u32_25096 %51 -OpNoLine -OpReturn -OpFunctionEnd + %u32_5 = OpConstant %u32 5 + %u32_25096 = OpConstant %u32 25096 + %1 = OpFunction %void None %17 + %29 = OpLabel + OpLine %5 24 4 + %30 = OpLoad %v3u32 %tid + OpLine %5 25 4 + %31 = OpInBoundsAccessChain %_ptr_StorageBuffer__runtimearr_u32 %offset_buffer %u32_0 + %32 = OpArrayLength %u32 %offset_buffer 0 + OpLine %5 26 4 + %33 = OpInBoundsAccessChain %_ptr_StorageBuffer_u32 %output_buffer %u32_0 + OpLine %5 30 36 + %34 = OpCompositeExtract %u32 %30 0 + OpLine %5 30 21 + %35 = OpFunctionCall %u32 %dis_reference__compute_offset %34 + OpLine %5 31 26 + %36 = OpULessThan %bool %35 %32 + OpNoLine + OpSelectionMerge %37 None + OpBranchConditional %36 %38 %39 + %38 = OpLabel + OpBranch %37 + %39 = OpLabel + OpReturn + %37 = OpLabel + OpLine %5 31 26 + %40 = OpIAdd %u32 %u32_0 %35 + %41 = OpInBoundsAccessChain %_ptr_StorageBuffer_u32 %31 %40 + %42 = OpLoad %u32 %41 + OpLine %5 32 21 + %43 = OpConvertUToF %f32 %42 + OpLine %5 32 20 + %44 = OpFMul %f32 %43 %f32_1_7 + %45 = OpBitcast %f32 %u32_0 + %46 = OpBitcast %f32 %u32_1333788671 + %47 = OpConvertFToU %u32 %44 + %48 = OpFUnordLessThan %bool %44 %45 + %49 = OpFOrdGreaterThan %bool %44 %46 + %50 = OpSelect %u32 %48 %u32_0 %47 + %51 = OpSelect %u32 %49 %u32_4294967295 %50 + OpLine %5 59 13 + %52 = OpAtomicIAdd %u32 %33 %u32_5 %u32_25096 %51 + OpNoLine + OpReturn + OpFunctionEnd %dis_reference__compute_offset = OpFunction %u32 DontInline|Const %21 -%53 = OpFunctionParameter %u32 -%54 = OpLabel -OpLine %5 43 4 -%55 = OpIAdd %u32 %u32_1 %53 -OpNoLine -OpReturnValue %55 -OpFunctionEnd + %53 = OpFunctionParameter %u32 + %54 = OpLabel + OpLine %5 43 4 + %55 = OpIAdd %u32 %u32_1 %53 + OpNoLine + OpReturnValue %55 + OpFunctionEnd diff --git a/spv/dis_reference.spirv_tools_like b/spv/dis_reference.spirv_tools_like index 363c3e77..361f75a6 100644 --- a/spv/dis_reference.spirv_tools_like +++ b/spv/dis_reference.spirv_tools_like @@ -1,11 +1,11 @@ -OpCapability Shader -OpCapability StorageImageWriteWithoutFormat -OpCapability VulkanMemoryModel -OpMemoryModel Logical Vulkan -OpEntryPoint GLCompute %1 "main" %tid %offset_buffer %output_buffer -OpExecutionMode %1 LocalSize 32 1 1 -%5 = OpString "ui/dis_reference.rs" -OpSource Unknown 0 %5 "// compile-flags: -C target-feature=+StorageImageWriteWithoutFormat + OpCapability Shader + OpCapability StorageImageWriteWithoutFormat + OpCapability VulkanMemoryModel + OpMemoryModel Logical Vulkan + OpEntryPoint GLCompute %1 "main" %tid %offset_buffer %output_buffer + OpExecutionMode %1 LocalSize 32 1 1 + %5 = OpString "ui/dis_reference.rs" + OpSource Unknown 0 %5 "// compile-flags: -C target-feature=+StorageImageWriteWithoutFormat // compile-flags: -C llvm-args=--disassemble // normalize-stderr-test \"OpSource .*\\n\" -> \"\" // normalize-stderr-test \"OpLine .*\\n\" -> \"\" @@ -75,94 +75,94 @@ pub unsafe fn atomic_i_add( } } " -OpName %tid "tid" -OpName %offset_buffer "offset_buffer" -OpName %output_buffer "output_buffer" -OpName %dis_reference__compute_offset "dis_reference::compute_offset" -OpDecorate %_runtimearr_uint ArrayStride 4 -OpDecorate %_struct_8 Block -OpMemberDecorate %_struct_8 0 Offset 0 -OpDecorate %_struct_9 Block -OpMemberDecorate %_struct_9 0 Offset 0 -OpDecorate %tid BuiltIn LocalInvocationId -OpDecorate %offset_buffer NonWritable -OpDecorate %offset_buffer Binding 42 -OpDecorate %offset_buffer DescriptorSet 0 -OpDecorate %output_buffer Binding 69 -OpDecorate %output_buffer DescriptorSet 1 -%uint = OpTypeInt 32 0 -%v3uint = OpTypeVector %uint 3 + OpName %tid "tid" + OpName %offset_buffer "offset_buffer" + OpName %output_buffer "output_buffer" + OpName %dis_reference__compute_offset "dis_reference::compute_offset" + OpDecorate %_runtimearr_uint ArrayStride 4 + OpDecorate %_struct_8 Block + OpMemberDecorate %_struct_8 0 Offset 0 + OpDecorate %_struct_9 Block + OpMemberDecorate %_struct_9 0 Offset 0 + OpDecorate %tid BuiltIn LocalInvocationId + OpDecorate %offset_buffer NonWritable + OpDecorate %offset_buffer Binding 42 + OpDecorate %offset_buffer DescriptorSet 0 + OpDecorate %output_buffer Binding 69 + OpDecorate %output_buffer DescriptorSet 1 + %uint = OpTypeInt 32 0 + %v3uint = OpTypeVector %uint 3 %_ptr_Input_v3uint = OpTypePointer Input %v3uint %_runtimearr_uint = OpTypeRuntimeArray %uint -%_struct_8 = OpTypeStruct %_runtimearr_uint + %_struct_8 = OpTypeStruct %_runtimearr_uint %_ptr_StorageBuffer__struct_8 = OpTypePointer StorageBuffer %_struct_8 -%_struct_9 = OpTypeStruct %uint + %_struct_9 = OpTypeStruct %uint %_ptr_StorageBuffer__struct_9 = OpTypePointer StorageBuffer %_struct_9 -%float = OpTypeFloat 32 -%void = OpTypeVoid -%17 = OpTypeFunction %void -%tid = OpVariable %_ptr_Input_v3uint Input + %float = OpTypeFloat 32 + %void = OpTypeVoid + %17 = OpTypeFunction %void + %tid = OpVariable %_ptr_Input_v3uint Input %_ptr_StorageBuffer__runtimearr_uint = OpTypePointer StorageBuffer %_runtimearr_uint %offset_buffer = OpVariable %_ptr_StorageBuffer__struct_8 StorageBuffer -%uint_0 = OpConstant %uint 0 + %uint_0 = OpConstant %uint 0 %_ptr_StorageBuffer_uint = OpTypePointer StorageBuffer %uint %output_buffer = OpVariable %_ptr_StorageBuffer__struct_9 StorageBuffer -%21 = OpTypeFunction %uint %uint -%uint_1 = OpConstant %uint 1 -%bool = OpTypeBool -%float_1_7 = OpConstant %float 1.7 + %21 = OpTypeFunction %uint %uint + %uint_1 = OpConstant %uint 1 + %bool = OpTypeBool + %float_1_7 = OpConstant %float 1.7 %uint_1333788671 = OpConstant %uint 1333788671 %uint_4294967295 = OpConstant %uint 4294967295 -%uint_5 = OpConstant %uint 5 -%uint_25096 = OpConstant %uint 25096 -%1 = OpFunction %void None %17 -%29 = OpLabel -OpLine %5 24 4 -%30 = OpLoad %v3uint %tid -OpLine %5 25 4 -%31 = OpInBoundsAccessChain %_ptr_StorageBuffer__runtimearr_uint %offset_buffer %uint_0 -%32 = OpArrayLength %uint %offset_buffer 0 -OpLine %5 26 4 -%33 = OpInBoundsAccessChain %_ptr_StorageBuffer_uint %output_buffer %uint_0 -OpLine %5 30 36 -%34 = OpCompositeExtract %uint %30 0 -OpLine %5 30 21 -%35 = OpFunctionCall %uint %dis_reference__compute_offset %34 -OpLine %5 31 26 -%36 = OpULessThan %bool %35 %32 -OpNoLine -OpSelectionMerge %37 None -OpBranchConditional %36 %38 %39 -%38 = OpLabel -OpBranch %37 -%39 = OpLabel -OpReturn -%37 = OpLabel -OpLine %5 31 26 -%40 = OpIAdd %uint %uint_0 %35 -%41 = OpInBoundsAccessChain %_ptr_StorageBuffer_uint %31 %40 -%42 = OpLoad %uint %41 -OpLine %5 32 21 -%43 = OpConvertUToF %float %42 -OpLine %5 32 20 -%44 = OpFMul %float %43 %float_1_7 -%45 = OpBitcast %float %uint_0 -%46 = OpBitcast %float %uint_1333788671 -%47 = OpConvertFToU %uint %44 -%48 = OpFUnordLessThan %bool %44 %45 -%49 = OpFOrdGreaterThan %bool %44 %46 -%50 = OpSelect %uint %48 %uint_0 %47 -%51 = OpSelect %uint %49 %uint_4294967295 %50 -OpLine %5 59 13 -%52 = OpAtomicIAdd %uint %33 %uint_5 %uint_25096 %51 -OpNoLine -OpReturn -OpFunctionEnd + %uint_5 = OpConstant %uint 5 + %uint_25096 = OpConstant %uint 25096 + %1 = OpFunction %void None %17 + %29 = OpLabel + OpLine %5 24 4 + %30 = OpLoad %v3uint %tid + OpLine %5 25 4 + %31 = OpInBoundsAccessChain %_ptr_StorageBuffer__runtimearr_uint %offset_buffer %uint_0 + %32 = OpArrayLength %uint %offset_buffer 0 + OpLine %5 26 4 + %33 = OpInBoundsAccessChain %_ptr_StorageBuffer_uint %output_buffer %uint_0 + OpLine %5 30 36 + %34 = OpCompositeExtract %uint %30 0 + OpLine %5 30 21 + %35 = OpFunctionCall %uint %dis_reference__compute_offset %34 + OpLine %5 31 26 + %36 = OpULessThan %bool %35 %32 + OpNoLine + OpSelectionMerge %37 None + OpBranchConditional %36 %38 %39 + %38 = OpLabel + OpBranch %37 + %39 = OpLabel + OpReturn + %37 = OpLabel + OpLine %5 31 26 + %40 = OpIAdd %uint %uint_0 %35 + %41 = OpInBoundsAccessChain %_ptr_StorageBuffer_uint %31 %40 + %42 = OpLoad %uint %41 + OpLine %5 32 21 + %43 = OpConvertUToF %float %42 + OpLine %5 32 20 + %44 = OpFMul %float %43 %float_1_7 + %45 = OpBitcast %float %uint_0 + %46 = OpBitcast %float %uint_1333788671 + %47 = OpConvertFToU %uint %44 + %48 = OpFUnordLessThan %bool %44 %45 + %49 = OpFOrdGreaterThan %bool %44 %46 + %50 = OpSelect %uint %48 %uint_0 %47 + %51 = OpSelect %uint %49 %uint_4294967295 %50 + OpLine %5 59 13 + %52 = OpAtomicIAdd %uint %33 %uint_5 %uint_25096 %51 + OpNoLine + OpReturn + OpFunctionEnd %dis_reference__compute_offset = OpFunction %uint DontInline|Const %21 -%53 = OpFunctionParameter %uint -%54 = OpLabel -OpLine %5 43 4 -%55 = OpIAdd %uint %uint_1 %53 -OpNoLine -OpReturnValue %55 -OpFunctionEnd + %53 = OpFunctionParameter %uint + %54 = OpLabel + OpLine %5 43 4 + %55 = OpIAdd %uint %uint_1 %53 + OpNoLine + OpReturnValue %55 + OpFunctionEnd From 12a24305146b0bb71afffe8dae2e9218e04c0bea Mon Sep 17 00:00:00 2001 From: firestar99 Date: Mon, 30 Mar 2026 11:18:01 +0200 Subject: [PATCH 12/12] dis ctx: rename `--like` to `--profile` --- crates/tools-gen/src/dis.rs | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/crates/tools-gen/src/dis.rs b/crates/tools-gen/src/dis.rs index efa1cf17..8277aa60 100644 --- a/crates/tools-gen/src/dis.rs +++ b/crates/tools-gen/src/dis.rs @@ -10,7 +10,7 @@ pub struct Args { path: PathBuf, /// Emit disassembly like as if it was emitted by this tool #[arg(short, long, default_value_t)] - like: Like, + profile: Profile, /// color #[clap(long, default_value_t)] color: clap::ColorChoice, @@ -20,14 +20,14 @@ pub struct Args { } #[derive(Clone, Debug, Default, ValueEnum)] -pub enum Like { +pub enum Profile { #[default] Default, Rspirv, SpirvTools, } -impl std::fmt::Display for Like { +impl std::fmt::Display for Profile { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { self.to_possible_value() .expect("no values are skipped") @@ -76,10 +76,10 @@ impl Args { } pub fn to_dis_opts(&self) -> anyhow::Result { - let mut opt = match self.like { - Like::Default => DisOptions::default(), - Like::Rspirv => DisOptions::like_rspirv(), - Like::SpirvTools => DisOptions::like_spirv_tools(), + let mut opt = match self.profile { + Profile::Default => DisOptions::default(), + Profile::Rspirv => DisOptions::like_rspirv(), + Profile::SpirvTools => DisOptions::like_spirv_tools(), }; opt.color = matches!(self.color, clap::ColorChoice::Always); Ok(opt) @@ -107,7 +107,7 @@ pub mod test { fn test_dis_reference_default() -> anyhow::Result<()> { test_dis_reference( expect_file!["../../../spv/dis_reference.rspirv2"], - Like::Default, + Profile::Default, false, ) } @@ -116,7 +116,7 @@ pub mod test { fn test_dis_reference_default_be() -> anyhow::Result<()> { test_dis_reference( expect_file!["../../../spv/dis_reference.rspirv2"], - Like::Default, + Profile::Default, true, ) } @@ -125,7 +125,7 @@ pub mod test { fn test_dis_reference_rspirv() -> anyhow::Result<()> { test_dis_reference( expect_file!["../../../spv/dis_reference.rspirv_like"], - Like::Rspirv, + Profile::Rspirv, false, ) } @@ -134,7 +134,7 @@ pub mod test { fn test_dis_reference_rspirv_be() -> anyhow::Result<()> { test_dis_reference( expect_file!["../../../spv/dis_reference.rspirv_like"], - Like::Rspirv, + Profile::Rspirv, true, ) } @@ -143,7 +143,7 @@ pub mod test { fn test_dis_reference_spirv_tools() -> anyhow::Result<()> { test_dis_reference( expect_file!["../../../spv/dis_reference.spirv_tools_like"], - Like::SpirvTools, + Profile::SpirvTools, false, ) } @@ -152,19 +152,19 @@ pub mod test { fn test_dis_reference_spirv_tools_be() -> anyhow::Result<()> { test_dis_reference( expect_file!["../../../spv/dis_reference.spirv_tools_like"], - Like::SpirvTools, + Profile::SpirvTools, true, ) } fn test_dis_reference( expect: ExpectFile, - like: Like, + profile: Profile, module_swap_bytes: bool, ) -> anyhow::Result<()> { let args = Args { path: spv("dis_reference"), - like, + profile, module_swap_bytes, color: clap::ColorChoice::Never, };