Unary ops with integer support each has 3 opcode variants, with Cast having 3 extra custom "Reuse" opcode variants for different destination types.
Abs_InPlace
Abs_Reuse
Cast
Cast_InPlace
Cast_Reuse
Cast_ReuseDouble
Cast_ReuseInteger
Cast_ReuseLWC
Negate
Negate_InPlace
Negate_Reuse
Saturate
Saturate_InPlace
Saturate_Reuse
Sign
Sign_InPlace
Sign_Reuse
ACos
Unary ops without integer support.
ACos_InPlace
ACos_Reuse
ASin
ASin_InPlace
ASin_Reuse
ATan
ATan_InPlace
ATan_Reuse
Ceil
Ceil_InPlace
Ceil_Reuse
Cos
Cos_InPlace
Cos_Reuse
Exponential
Exponential_InPlace
Exponential_Reuse
Exponential2
Exponential2_InPlace
Exponential2_Reuse
Floor
Floor_InPlace
Floor_Reuse
Frac
Frac_InPlace
Frac_Reuse
Fractional
Fractional_InPlace
Fractional_Reuse
Logarithm
Logarithm_InPlace
Logarithm_Reuse
Logarithm10
Logarithm10_InPlace
Logarithm10_Reuse
Logarithm2
Logarithm2_InPlace
Logarithm2_Reuse
Normalize
Normalize_InPlace
Normalize_Reuse
Reciprocal
Reciprocal_InPlace
Reciprocal_Reuse
Round
Round_InPlace
Round_Reuse
Sin
Sin_InPlace
Sin_Reuse
Sqrt
Sqrt_InPlace
Sqrt_Reuse
Tan
Tan_InPlace
Tan_Reuse
Truncate
Truncate_InPlace
Truncate_Reuse
Length
Non-standard unary ops single opcode variant.
Add
Binary ops with integer support each has 7 opcode variants.
Add_InPlace
Add_Reuse
Add_Const
Add_ConstInPlace
Add_ConstReuse
Add_ConstReuseScalar
Divide
Divide_InPlace
Divide_Reuse
Divide_Const
Divide_ConstInPlace
Divide_ConstReuse
Divide_ConstReuseScalar
Fmod
Fmod_InPlace
Fmod_Reuse
Fmod_Const
Fmod_ConstInPlace
Fmod_ConstReuse
Fmod_ConstReuseScalar
Max
Max_InPlace
Max_Reuse
Max_Const
Max_ConstInPlace
Max_ConstReuse
Max_ConstReuseScalar
Min
Min_InPlace
Min_Reuse
Min_Const
Min_ConstInPlace
Min_ConstReuse
Min_ConstReuseScalar
Multiply
Multiply_InPlace
Multiply_Reuse
Multiply_Const
Multiply_ConstInPlace
Multiply_ConstReuse
Multiply_ConstReuseScalar
Subtract
Subtract_InPlace
Subtract_Reuse
Subtract_Const
Subtract_ConstInPlace
Subtract_ConstReuse
Subtract_ConstReuseScalar
ATan2
Binary ops without integer support.
ATan2_InPlace
ATan2_Reuse
ATan2_Const
ATan2_ConstInPlace
ATan2_ConstReuse
ATan2_ConstReuseScalar
Cross
Non-standard binary ops single opcode variant.
Dot
Move
Ops that don't fall under unary or binary categories.
MoveForFixup
Constant
RuntimeVirtualTextureUniform
Texture inputs.
TexelSize
TextureSize
ExternalTextureCoordinateScaleRotation
External inputs (TODO: Unimplemented)
ExternalTextureCoordinateOffset
SparseVolumeTextureUniform
UnaryFirst
Standard unary ops have three variations: normal, in place (input == output), and reuse (input == output == last output)
UnaryNoInt
UnaryCustom
UnaryLast
BinaryFirst
Standard binary ops have seven variations: normal, in place (first input == output), reuse (first input == output == last output), plus four variations with inline constant second arguments (normal, in place, reuse, reuse with scalar constant).